日期:2014-05-17  浏览次数:20970 次

急求?this.getHibernateTemplate()为null
Dao层代码如下:
public class DepartmentDaoImpl extends HibernateDaoSupport implements DepartmentDao {
private SessionFactory sessionFactory;

  public void selectallpart() {
System.out.println("=========selectallpart===========");
System.out.println(this.getHibernateTemplate());//这里输出null
List list=null;
Session session=null;
Transaction tx=null;
try{
session=this.getHibernateTemplate().getSessionFactory().openSession();//报空指针错误!
tx=session.beginTransaction();
Query query=session.createQuery("select d from Department d");
list=query.list();

for (Iterator iter = list.iterator(); iter.hasNext();) {
Department object = (Department) iter.next();
System.out.println();

}

tx.commit();
}catch(Exception e)
{

e.printStackTrace();
tx.rollback();
}finally{
session.close();
}



}

}



问题补充:
  我在做登录的时候没有遇到问题,那应该不是整体的配置文件的错误……



------解决方案--------------------
spring的东西都依赖于配置文件,而你的这个类DepartmentDaoImpl 需要数据库持久化操作,而这个操作需要sessionFactory支持,正常来讲,如果你配置好了,也启用了这个配置文件,那么是没有问题的。虽然你说了最后一句话,还是检查一下为好。