新手求解getCurrentSession() 获取不到怎么回事?
报
空指针异常啊
情况class 1中
@Resource private SessionFactory sessionFactory;
public void setSessionFactory(SessionFactory sessionFactory) {
this.sessionFactory = sessionFactory;
}
在这里用sessionFactory 就没问题
然后另外一个文件 class 2
@Resource private SessionFactory sessionFactory;
public void setSessionFactory(SessionFactory sessionFactory) {
this.sessionFactory = sessionFactory;
}
然后再用这个sessionFactory 就不行啦 sessionFactory.getCurrentSession()时 就报
空指针异常啦
恩么回事 sessionfactory只能有一个吗?? 我刚学
------解决方案--------------------哦哦。你用的是spring注入sessionFactory啊。我还以为你是直接配置hibernate.cfg.xml
那你spring里sessionFactory的相关配置贴一下
------解决方案--------------------java.lang.NullPointerExceptionat csh.Junit.test1.adda(test1.java:68)
at
sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)……
==============================================================
是说sessionFactroy是Null,还是getCurrentSession()返回的Null
如果sessionFactory是Null,那可能是transactionManager没有正常构造出来,从transactionManager的配置文件来看没啥问题,Spring帮助我们生成了一个单例的transactionManager对象,通过对象名称("transactionManager")从ApplicationContext 里面的getBean方法获取。