美文网首页
spring注解nullpointerexception

spring注解nullpointerexception

作者: kiruma | 来源:发表于2017-11-18 11:41 被阅读0次

在applicationContext.xml中定义了sqlSessionFactory

定义一个Search类用于查询操作,希望通过注解的方式注入sqlSessionFactory

publicclassSearch {

@Autowired

SqlSessionFactory sqlSessionFactory;

publicvoidsearch(){

SqlSession session = sqlSessionFactory.openSession();

UserDao u=session.getMapper(UserDao.class);

User user=u.getUser(1);

System.out.println(user.getName());

}

}

定义一个Test类进行查询

publicclassTest {

publicstaticvoidmain(String[] args){

Search search=newSearch();

search.search();

}

}

报空指针异常。

分析:这里直接使用了new 出一个Search的方式,那这个对象肯定不是收到spring容器管理的。这样子的话,spring容器又怎么能把sqlSessionFactory注入到你这个对象中呢?

所以正确的写法是这样子。

先在spring容器中定义出search ,然后在Test中启动容器,获取search, 这样才能实现自动装配。

publicclassTest {

publicstaticvoidmain(String[] args){

@SuppressWarnings("resource")

ApplicationContext context =newClassPathXmlApplicationContext(

"applicationContext.xml");

Search search=(Search) context.getBean("search");

search.search();

}

}

相关文章

网友评论

      本文标题: spring注解nullpointerexception

      本文链接:https://www.haomeiwen.com/subject/jldevxtx.html