'sessionFactory' or 'hibernateTemplate' is required
来源:互联网 发布:刚性兑付 知乎 编辑:程序博客网 时间:2024/04/30 14:16
今天又一次在整合SSH的时候,突然报错了'sessionFactory' or 'hibernateTemplate' is required,先前也写过博客来整合SSH框架,但是先前的框架都是用XML文件进行配置的,而这次小编为了省事想通过注解形式来进行注入,但是报出了上面的错误。
底层BaseDaoImpl继承了HibernateDaoSupport类,咱们都知道HibernateDaoSupport中报错了SessionFactory的相关信息,还报错了HibernateTemplate模板方法的信息,刚开始小编是这么来写的。
<span style="font-family:Comic Sans MS;font-size:18px;">public abstract class BaseDaoImpl<T> extends HibernateDaoSupport implements BaseDao<T> {@Resourceprivate SessionFactory sessionFactory;}</span>
直接在BaseDaoImpl实现类中,想注入sessionFactory,傻傻的很天真,还是对底层机制了解的不是很深刻,其实在HibernateDaoSupport中已经有SessionFactory的引用了,在此就不需要在添加对SessionFactory的引用,但是需要为sessionFactory中进行注入,引用在HibernateDaoSupport中用到了sessionFactory,注入的sessionFactory的目的是为了实例化HibernateTemplate,我们看一下底层源码
<span style="font-family:Comic Sans MS;font-size:18px;">public final void setSessionFactory(SessionFactory sessionFactory) {if (this.hibernateTemplate == null || sessionFactory != this.hibernateTemplate.getSessionFactory()) {this.hibernateTemplate = createHibernateTemplate(sessionFactory);}}</span>
上述源码中,直接用sessionFactory来创建HibernateTemplate,难怪会报'sessionFactory' or 'hibernateTemplate' is required,要不让给我sessionFactory来创建HibernateTemplate,要不然直接给我一个HibernateTemplate,怎么来解决呢,我们重写一下这个方法即可,在set方法中为父类方法赋值即可
<span style="font-family:Comic Sans MS;font-size:18px;">public abstract class BaseDaoImpl<T> extends HibernateDaoSupport implements BaseDao<T> {@Resource public void setSessionFacotry(SessionFactory sessionFacotry) { super.setSessionFactory(sessionFacotry); } }</span>
0 0
- 'sessionFactory' or 'hibernateTemplate' is required
- 'sessionFactory' or 'hibernateTemplate' is required
- 'sessionFactory' or 'hibernateTemplate' is required
- 'sessionFactory' or 'hibernateTemplate' is required
- 'sessionFactory' or 'hibernateTemplate' is required
- 'sessionFactory' or 'hibernateTemplate' is required
- sessionFactory or hibernateTemplate is required错误
- sessionFactory or hibernateTemplate is required错误
- “sessionFactory " or "hibernateTemplate " is required异常
- SessionFactory or HibernateTemplate is required 的解决办法
- 'sessionFactory' or 'hibernateTemplate' is required(spring+hibernate)
- SSH错误'sessionFactory' or 'hibernateTemplate' is required
- SSH整合,"sessionFactory " or "hibernateTemplate " is required异常
- java.lang.IllegalArgumentException: sessionFactory or hibernateTemplate is required 错误解决方法
- SSH整合时sessionFactory or hibernateTemplate is required异常
- SSH整合,"sessionFactory " or "hibernateTemplate " is required异常
- SSH整合,"sessionFactory " or "hibernateTemplate " is required异常
- 今天出现这个错误:'sessionFactory' or 'hibernateTemplate' is required
- Mac 下安装Ruby环境
- linux服务器编程之高效事件处理模式
- JavaSE--- 设计模式、JDK5.0新特性、JDK7.0新特性
- javascript dom读取xml
- Linux 内核版本命名
- 'sessionFactory' or 'hibernateTemplate' is required
- 本地git工程迁移到GitHub的方法
- Android Bundle总结
- 取经之路------浅谈C/S与B/S架构模型
- gem5 : 多个checkpoint聚合后运行Multiprogrammed workloads
- MySQL服务器时间同步问题
- 第二章 系统分析
- FMDB
- 大众对黑客的误解与黑客的自白