如何在DAO层既使用注解又使用HibernateDaoSupport
2016-05-05 05:15
381 查看
说明:
1.在使用spring的时候,如何你用注解来实例化XxxDao,就无法继承HibernateDaoSupport..
2.使用xml配置的话,可以通过继承HibernateDaoSupport来进行持久化操作.
定义自己的MyDaoSupport类:
eg:UserDao类:
1.在使用spring的时候,如何你用注解来实例化XxxDao,就无法继承HibernateDaoSupport..
2.使用xml配置的话,可以通过继承HibernateDaoSupport来进行持久化操作.
定义自己的MyDaoSupport类:
package dao; import javax.annotation.Resource; import org.hibernate.SessionFactory; import org.springframework.orm.hibernate4.support.HibernateDaoSupport; import org.springframework.stereotype.Component; @Component("myDaoSupport") public class MyDaoSupport extends HibernateDaoSupport{ /** * 说明: * 1.在既使用注解又使用HibernateDaoSupport的情况下,只能这么写, * 原因是HibernateDaoSupport是抽象类,且方法都是final修饰的, * 这样就不能为其注入sessionFactory或者hibernateTemplate * 2.若使用xml配置的话,就可以直接给HibernateDaoSupport注入. */ //而使用HibernateDaosupport,又必须为其注入sessionFactory或者hibernateTemplate //这里为其注入sessionFactory,最后只需要让自己的Dao继承这个MyDaoSupport. //不直接在自己的Dao里继承HibernateDaoSupport的原因是这样可以简化代码, //不用每次都为其注入sessionFactory或者hibernateTemplate了,在这里注入一次就够了. @Resource(name="sessionFactory") public void setSuperSessionFactory(SessionFactory sessionFactory){ super.setSessionFactory(sessionFactory); } // 或者为其注入hibernateTemplate // @Resource(name="hibernateTemplate") // public void setSuperHibernateTemplate(HibernateTemplate hibernateTemplate){ // super.setHibernateTemplate(hibernateTemplate); // } }
eg:UserDao类:
package dao; import model.User; import org.springframework.stereotype.Repository; @Repository public class UserDao extends MyDaoSupport{ public void save(User user) { this.getHibernateTemplate().save(user); } }
相关文章推荐
- LeetCode 30. Substring with Concatenation of All Words
- 最近的一些反思
- 这学期计划
- 一台电脑同时运行多个tomcat配置方法
- IDA 插件
- 半夜复习操作系统
- LinkedIn开源Dr. Elephant:Hadoop和Spark性能监控工具
- 0.1秒的价值!浅谈Web前端页面提速问题
- 人工智能幸顿(Hinton)学派
- struts2 Action 获得 http 提交的 from 的参数的4个方法
- LeetCode 213. House Robber II(小偷游戏)
- 三栏式布局(所谓的圣杯和双飞翼)
- GDT LDT 的使用 虚存管理
- LeetCode 212. Word Search II(单词搜索)
- XPath 初步讲解
- 重试C语言之C语言判断和循环
- python2.7.x的字符串编码到底什么鬼?(中文和英文的处理)
- 重试C语言之C语言运算符
- 五步搞定Android开发环境部署——非常详细的Android开发环境搭建教程
- 《机电传动控制》大作业 作业1