Java MyBatis with Spring-配置错误空指针异常
我是一个尝试整合mybatis的新手。终于在这个空指针异常上着陆了 我的POMJava MyBatis with Spring-配置错误空指针异常,java,spring,mybatis,Java,Spring,Mybatis,我是一个尝试整合mybatis的新手。终于在这个空指针异常上着陆了 我的POM <dependency> <groupId>org.mybatis</groupId> <artifactId>mybatis-spring</artifactId> <version>1.1.1</version> </dependency> 控制器 pu
<dependency>
<groupId>org.mybatis</groupId>
<artifactId>mybatis-spring</artifactId>
<version>1.1.1</version>
</dependency>
控制器
public interface UserMapper {
UserBean getUser();
}
<mapper namespace="biz.canisrigel.slapMe.mapper.UserMapper">
<select id="getUser" resultType="UserBean">
Select * from Users where id = 1;
</select>
</mapper>
@Controller
@RequestMapping("/authenticate")
public class LoginController {
@RequestMapping("/index")
public String index() {
UserDao userDao = new UserDao();
System.out.println(userDao.getUser(1).getPassword());
return "Login";
}
}
错误
public interface UserMapper {
UserBean getUser();
}
<mapper namespace="biz.canisrigel.slapMe.mapper.UserMapper">
<select id="getUser" resultType="UserBean">
Select * from Users where id = 1;
</select>
</mapper>
@Controller
@RequestMapping("/authenticate")
public class LoginController {
@RequestMapping("/index")
public String index() {
UserDao userDao = new UserDao();
System.out.println(userDao.getUser(1).getPassword());
return "Login";
}
}
org.springframework.web.util.NestedServletException:请求处理失败;嵌套异常是java.lang.NullPointerException
org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:932)
org.springframework.web.servlet.FrameworkServlet.doGet(FrameworkServlet.java:816)
javaservlet.http.HttpServlet.service(HttpServlet.java:621)
您的
UserDao
对象需要来自Spring对象存储以及映射器。像您这样在索引
方法中实例化UserDao对象将意味着您调用时映射器为null
,因为Spring没有为您设置对象,因此无法自动连接映射器
您需要使用@Resource
注释将您的UserDao对象引入控制器,如下所示:
@Controller
@RequestMapping("/authenticate")
public class LoginController {
@Resource
UserDao userDao;
@RequestMapping("/index")
public String index() {
System.out.println(userDao.getUser(1).getPassword());
return "Login";
}
}