数据源和sessionFactory什么的,都是在配置文件里写的。
dao是用注解写的。
@Repository public class BaseDao<T> extends HibernateDaoSupport { ...
启动时报错:
Caused by: java.lang.IllegalArgumentException: 'sessionFactory' or 'hibernateTemplate' is required at org.springframework.orm.hibernate3.support.HibernateDaoSupport.checkDaoConfig(HibernateDaoSupport.java:118)
才想起来,dao里有个属性sessionFactory需要设置值。
尝试使用@Autowired注入,发现不好使。
搜了一下,原来得这样:
@Repository public class BaseDao<T> extends HibernateDaoSupport { @Resource public void setSessionFacotry(SessionFactory sessionFacotry) { super.setSessionFactory(sessionFacotry); }
得覆盖父类的该方法。
重启,OK了。
|