`

Spring_Hibernate_HibernateDaoSupport

阅读更多

继承HibernateDaoSupport有三种方式:

1.

@Component("logDAO") 
public class LogDAOImpl extends HibernateDaoSupport implements LogDAO {
	public void save(Log log) {
		this.getHibernateTemplate().save(log);
	}
}

    xml中注入:

<bean id="hibernateTemplate" class="org.springframework.orm.hibernate3.HibernateTemplate">
  	<property name="sessionFactory" ref="sessionFactory"></property>
 </bean>
 
 <bean id="logDao" class="com.zchen.spring.LogDaoImpl">
  	<property name="hibernateTemplate" ref="hibernateTemplate"></property>
 </bean>

   也可以直接注入SessionFactory

<bean id="logDao" class="com.zchen.spring.LogDaoImpl">
	<property name="sessionFactory" ref="sessionFactory"></property>
</bean>

 这样一来每个daoImpl都要在bean.xml中注入所以第二种方式就是:

2.

import javax.annotation.Resource;
import org.springframework.orm.hibernate3.HibernateTemplate;
import org.springframework.orm.hibernate3.support.HibernateDaoSupport;
import org.springframework.stereotype.Component;
@Component
public class SuperDAO {
	private HibernateTemplate hibernateTemplate;
	public HibernateTemplate getHibernateTemplate() {
		return hibernateTemplate;
	}
	@Resource
	public void setHibernateTemplate(HibernateTemplate hibernateTemplate) {
		this.hibernateTemplate = hibernateTemplate;
	}
	
	
}

 

    所有的daoImpl都继承自SuperDao

package com.zchen.dao.impl;
import javax.annotation.Resource;
import org.hibernate.Session;
import org.springframework.orm.hibernate3.HibernateTemplate;
import org.springframework.stereotype.Component;
import com.zchen.dao.UserDAO;
import com.zchen.model.User;
@Component("urseDao") public class UserDAOImpl extends SuperDAO implements UserDAO {
	public void save(User user) {		
		this.getHibernateTemplate().save(user);	
	}
}

 

<bean id="hibernateTemplate" class="org.springframework.orm.hibernate3.HibernateTemplate">
  	<property name="sessionFactory" ref="sessionFactory"></property>
 </bean>
 

 3继承sessionFactory

import javax.annotation.Resource;
import org.hibernate.SessionFactory;
import org.springframework.orm.hibernate3.support.HibernateDaoSupport;
import org.springframework.stereotype.Component;
@Component
public class SuperDAO extends HibernateDaoSupport {	
	@Resource(name="sessionFactory")
	public void setSuperSessionFactory(SessionFactory sessionFactory) {
		super.setSessionFactory(sessionFactory);
	}	
}

   继承hibernateTemplate也是一样的

@Component
public class SuperDAO extends HibernateDaoSupport {
	
	
	@Resource(name="hibernateTemplate")
	public void setSuperHibernateTemplate(HibernateTemplate hibernateTemplate) {
		super.setHibernateTemplate(hibernateTemplate);
	}
	
	
}

  

 

@Component("u") 
public class UserDAOImpl extends SuperDAO implements UserDAO {
	public void save(User user) {
	 	this.getHibernateTemplate().save(user);
	}
}

 如果继承hibernateTemplate要配置bean

 

  <bean id="userDao" class="com.zchen.spring.UserDaoImpl">
   <property name="hibernateTemplate" ref="hibernateTemplate"></property>
 </bean>

 

分享到:
评论

相关推荐

    spring_hibernate整合案例

    在IT行业中,Spring和Hibernate是两个非常重要的框架,它们分别在应用层和数据持久化层发挥着关键作用。Spring是一个全面的Java企业级应用开发框架,提供了依赖注入、AOP(面向切面编程)、MVC(模型-视图-控制器)...

    spring_hibernate_整合

    4. **DAO(数据访问对象)层**:Spring可以帮助我们创建DAO接口和其实现,通过`HibernateTemplate`或`HibernateDaoSupport`来简化Hibernate的操作。这些类提供了事务管理、错误处理等支持,使得DAO层的代码更加简洁...

    struts2_spring_hibernate_分页显示.doc

    ### Struts2、Spring、Hibernate 分页显示技术详解 #### 一、背景介绍 在现代Web应用开发中,特别是基于Java平台的企业级应用,Struts2、Spring 和 Hibernate 是非常重要的三大框架。其中,Struts2 负责前端表现层...

    Spring_Hibernate集成

    * 继承HibernateDaoSupport类,使用HibernateTemplate来持久化,HibernateTemplate是 Hibernate Session的轻量级封装 * 默认情况下运行期异常才会回滚(包括继承了RuntimeException子类),普通异常是不会滚的 ...

    spring2_hibernate3实例.rar

    《Spring2与Hibernate3整合应用详解》 在Java企业级开发中,Spring和Hibernate是两个极为重要的框架。Spring作为一个全面的轻量级容器,提供了强大的依赖注入、事务管理以及AOP(面向切面编程)等功能;而Hibernate...

    2.2.1.spring_hibernate

    9. **Spring的HibernateTemplate或HibernateDaoSupport**:这两个类为使用Hibernate提供了一些便利,如自动关闭Session,处理事务等。 10. **整合配置**:在Spring的配置文件中,需要正确配置Hibernate的相关属性,...

    spring,hibernate,struts

    2. `spring_integration_hibernate3_hibernateDaoSupport`:这部分可能涉及Spring对Hibernate 3的支持,尤其是HibernateDaoSupport类,它是Spring提供的基类,为DAO(Data Access Object)层提供了一些便利的方法,...

    Spring_Struts、Hibernate支持笔记

    在数据访问层,Spring提供了对Hibernate的支持,比如`HibernateDaoSupport`和`HibernateTemplate`。`HibernateDaoSupport`是一个抽象类,它提供了一个预配置的`SessionFactory`,使得具体的DAO类可以方便地操作...

    spring与hibernate的整合

    在 Spring 中使用 Hibernate 通常有两种方式:一是使用 HibernateTemplate 或 HibernateDaoSupport,另一种是直接使用 Hibernate 的原生 API。这里我们关注后者,通过 Spring 注入 SessionFactory 到 DAO 类中,然后...

    springboot2.0多数据源集成hibernate配置hibernateDaoSupport示例

    本示例主要介绍如何实现Spring Boot 2.0多数据源的集成,并结合Hibernate进行配置,特别是在DAO层使用`HibernateDaoSupport`进行操作,而非使用JPA(Java Persistence API)。 首先,让我们了解Spring Boot 2.0的...

    spring的练习小sample

    6. **spring_1700_hibernate_hibernateDaoSupport**:Spring提供了HibernateDaoSupport类,它为基于Hibernate的DAO层提供了便利,如提供Session的获取和关闭等基础功能。 7. **spring_0200_IOC_id_name**:这部分...

    spring_hibernate2

    - **实体管理**:Spring提供`HibernateTemplate`和`HibernateDaoSupport`帮助简化DAO(数据访问对象)层的编写,或者使用`HibernateJpaVendorAdapter`和`EntityManagerFactoryBean`结合JPA进行操作。 4. **事务...

    spring java

    `spring_integration_hibernate3_hibernateDaoSupport`和`spring_integration_hibernate3_basic`两个文件,展示了如何利用Spring的HibernateTemplate和HibernateDaoSupport类进行数据操作。这些类提供了一套简化...

    使用Struts + Spring + Hibernate完成用户登陆笔记

    * 使用Spring框架来实现依赖注入和AOP,例如使用Spring的HibernateDaoSupport来实现DAO层的开发。 六、系统优点 * 使用Struts、Spring和Hibernate三种技术可以实现一个灵活、可维护和高效的用户登陆系统。 * 系统...

    Spring-Reference_zh_CN.rar_spring_spring 2.5_spring framework_sp

    `JdbcTemplate`和`SimpleJdbcTemplate`提供了一种简单的方式来执行SQL操作,而`HibernateTemplate`和`HibernateDaoSupport`则帮助开发者利用Hibernate进行数据库操作。 此外,Spring 2.5还包含了对Maven的支持,...

    spring+hibernate+flex整合

    此外,Spring的HibernateTemplate或HibernateDaoSupport类提供了一套便捷的方法,方便调用Hibernate的CRUD操作。 **Spring与Flex整合** Spring与Flex的整合主要涉及到服务端(Spring)与客户端(Flex)的通信。通常...

    spring+hibernate整合简单示例

    2. **SessionFactory和Session的管理**:Spring提供了一个HibernateTemplate或HibernateDaoSupport类,帮助我们管理SessionFactory和Session,使得在Spring环境下使用Hibernate变得更加方便。这些类会自动处理...

    Spring,Hibernate整合源码

    4. **HibernateTemplate与HibernateDaoSupport**:Spring提供了HibernateTemplate和HibernateDaoSupport,它们为DAO层提供了便捷的操作方法,如save、update、delete、find等,同时处理了事务和异常。 5. **JPA集成...

    Struts2,Spring与Hibernate整合应用,学生成绩管理系统

    ### Struts2、Spring与Hibernate整合应用:学生成绩管理系统 #### 一、知识点概览 本项目聚焦于Struts2、Spring与Hibernate三大框架的整合应用,旨在构建一个高效、稳定、易于维护的学生成绩管理系统。通过整合这...

Global site tag (gtag.js) - Google Analytics