`
xiaofengxbf
  • 浏览: 19224 次
  • 性别: Icon_minigender_1
  • 来自: 广州
社区版块
存档分类
最新评论

HibernateTemplate使用

 
阅读更多

HibernateTemplate在spring xml bean的编写

 

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

 

 

在HibernateTemplate类的父类HibernateAccessor中存在 sessionFactory的get和set方法,可以直接注入sessionFactory:

 

	/**
	 * Set the Hibernate SessionFactory that should be used to create
	 * Hibernate Sessions.
	 */
	public void setSessionFactory(SessionFactory sessionFactory) {
		this.sessionFactory = sessionFactory;
	}

	/**
	 * Return the Hibernate SessionFactory that should be used to create
	 * Hibernate Sessions.
	 */
	public SessionFactory getSessionFactory() {
		return this.sessionFactory;
	}

 

 

在项目dao层中不再需要直接使用sessionFactory了,可以使用HibernateTemplate 从中获得sessionFactory

在使用HibernateTemplate封装好的save update等方法:

 

public class HibernateTemplateDaoImpl implements HibernateTemplateDao {
	
	private HibernateTemplate hibernateTemplate ;

	public HibernateTemplate getHibernateTemplate() {
		return hibernateTemplate;
	}

	public void setHibernateTemplate(HibernateTemplate hibernateTemplate) {
		this.hibernateTemplate = hibernateTemplate;
	}

	public void hibernateTemplate() {
		// TODO Auto-generated method stub
		User user = new User();
		user.setAddress("huangxxx");
		user.setCode("csoJDPJFDSPFJI");
		user.setEmail("xoapfemg@rma.cpom");
		user.setName("xxxx");
		this.hibernateTemplate.save(user);
		System.out.println("HibernateTemplateDao--------");
	}
}

 

 

另外注意在封装中将所有的异常全部抛出为:

DataAccessException  方便进行管理

 

例如:

	public Serializable save(final Object entity) throws DataAccessException {
		return (Serializable) executeWithNativeSession(new HibernateCallback() {
			public Object doInHibernate(Session session) throws HibernateException {
				checkWriteOperationAllowed(session);
				return session.save(entity);
			}
		});
	}

 

 

 

 

分享到:
评论

相关推荐

    HibernateTemplate 的常规用法.doc

    在实际应用中,DAO(Data Access Object)类通常会使用HibernateTemplate。例如,以下是一个简单的`PersonDAOImpl`类的示例: ```java public class PersonDAOImpl implements PersonDAO { private static Log log...

    关于使用HibernateTemplate

    ### 关于使用HibernateTemplate #### 一、简介与背景 在Java企业级应用开发中,持久层技术扮演着至关重要的角色。其中,Hibernate作为一款优秀的ORM(Object Relational Mapping)框架,极大地简化了数据访问层的...

    HibernateTemplate分组统计

    1. **HibernateTemplate**:是Spring框架提供的用于简化Hibernate使用的模板类。它提供了大量操作数据库的方法,包括查询、更新等,并且内置了事务管理机制。 2. **分组统计**:指通过SQL语句对查询结果按照一个或多...

    HibernateTemplate详细描述以及使用范围

    ### HibernateTemplate 的详细介绍与使用范围 #### 一、概述 在Spring框架中,`HibernateTemplate`作为ORM(Object Relational Mapping)技术中的一个重要组件,它提供了简化Hibernate操作的方法集,使得开发人员...

    HibernateTemplate的方法使用

    ### HibernateTemplate 的方法使用 #### 一、简介与配置方式 **HibernateTemplate** 是 Spring 框架中用于简化 Hibernate 使用的一个工具类。它通过 AOP(面向切面编程)的思想,封装了大量的 CRUD(创建、读取、...

    hibernateTemplate的常用方法

    通过上述介绍,我们可以看到`HibernateTemplate`的强大之处在于它不仅简化了Hibernate的集成与使用,还提供了一系列实用的方法来满足不同的业务需求。在实际项目开发中,合理利用这些方法可以大大提升开发效率和代码...

    HibernateTemplate的用法总结

    HibernateTemplate是Spring框架提供的一种操作Hibernate的方式,它简化了Hibernate的使用过程,使开发者无需关注Session的管理与事务控制,极大地提高了开发效率。本文将对HibernateTemplate的主要用法进行详细介绍...

    hibernateTemplate

    使用`HibernateTemplate`可以减少大量模板代码的编写,提高开发效率。 #### 三、HibernateTemplate核心功能详解 ##### 1. 增删改查基础操作 `HibernateTemplate`提供了多种方法来执行基本的数据库操作: - **...

    HibernateTemplate类的使用

    ### HibernateTemplate类的使用详解 #### 一、引言 在Java开发中,持久层框架Hibernate因其优秀的ORM(Object-Relational Mapping)特性被广泛应用。为了更便捷地使用Hibernate,Spring框架提供了一系列工具类来简化...

    HibernateTemplate汇总

    HibernateTemplate 是 Spring 框架中的一個关键组件,用于简化 Hibernate 的使用,提供了許多实用的方法来进行数据库操作。在本文中,我们将对 HibernateTemplate 的主要方法进行总结和解释。 ...

    HibernateTemplate的简单示例

    HibernateTemplate的简单示例

    HibernateTemplate源代码

    `HibernateTemplate`是Spring框架提供的一个强大的工具,它不仅简化了Hibernate的使用,还提供了异常转换、资源管理等功能,使得开发人员能够更加专注于业务逻辑的编写。通过对`HibernateTemplate`的学习和使用,...

    hibernateTemplate批量删除数据

    在Hibernate框架中,`HibernateTemplate`提供了一种更为简洁、易于使用的API,用于执行基本的CRUD(创建、读取、更新、删除)操作。对于批量删除数据,`HibernateTemplate`提供了`bulkUpdate()`方法,该方法通过执行...

    SSH2增删改查使用HibernateTemplate

    在这个框架中,HibernateTemplate是Spring提供的一个工具类,它简化了Hibernate的使用,使得开发者可以更方便地进行数据库操作,如增删改查。接下来,我们将深入探讨如何在SSH2中使用HibernateTemplate进行这些基本...

    hibernateTemplate常用方法.htm

    hibernateTemplate常用方法.htm

    一个模拟Spring将SessionFactory注入到HibernateTemplate的小例子

    本示例将深入探讨如何使用Spring将SessionFactory注入到HibernateTemplate中,从而实现数据库操作的便捷管理。 首先,让我们了解几个关键组件: 1. SessionFactory:这是Hibernate的核心工厂类,用于创建Session...

    Spring+Hibernate工具类所有增删改查

    与JdbcTemplate不同,HibernateTemplate使用了Hibernate ORM,可以直接操作对象,而不是SQL语句。它可以自动处理对象的持久化、加载、更新和删除等操作,使得数据库操作更符合面向对象的思维模式。此外,它还提供了...

    简单封装 HibernateTemplate 各项功能

    GenericHibernateDao 继承 HibernateDao,简单封装 HibernateTemplate 各项功能,简化基于Hibernate Dao 的编写。

    springssh 我上培训班时spring框架搭建课件

    3. **HibernateTemplate使用**:HibernateTemplate是Spring提供的用于简化Hibernate使用的类,它提供了一系列方便的方法来执行常见的CRUD操作,从而降低了代码的复杂度。 4. **DAO层设计**:最后,在业务逻辑层...

Global site tag (gtag.js) - Google Analytics