`

spring整合hibernate关于 session的管理<三种方式>

阅读更多
转载:spring整合hibernate关于 session的管理
http://solodu.iteye.com/blog/454469
示例代码如下:
类代码:
public class UserDAOImpl extends HibernateDaoSupport implements UserDAO {   
  //三种方式
}


1 spring自动关闭连接
public List<User> getAll() {   
   return super.getHibernateTemplate().find("from User");   
} 

2 正确获取hibernate的session的方式
public List queryAll() throws Exception {      
    //ession session=super.getSession();错误      
    Session session=super.getSession(true);
     String hql="from Item as i";      
     try{      
        List l=session.createQuery(hql).list();      
     }finally{      
         session.close();   
     }   
 }  

3 Spring API:
geSession()是 org.springframework.orm.hibernate3.support.HibernateDaoSupport 中的一个方法,
它可以从当前事务或者一个新的事务获得一个hibernate session.
通常使用 releaseSession(org.hibernate.Session)方法与getSession()配合。
如果没有绑定线程,releaseSession关闭由这个DAO的SessionFactory创建的Hibernate Session
 public List queryAll() throws Exception {      
     Session session = super.getSession();      
     String hql = "from Item as i";      
     List l = session.createQuery(hql).list();      
     releaseSession(session); 
 } 
分享到:
评论

相关推荐

    第25,26讲 --搭建和配置Spring与Hibernate整合的环境

    &lt;bean id="transactionManager" class="org.springframework.orm.hibernate5.HibernateTransactionManager"&gt; &lt;property name="sessionFactory" ref="sessionFactory"/&gt; &lt;/bean&gt; ``` **步骤3:配置Hibernate** 在`...

    spring与hibernate的整合

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

    原创 Struts Spring Hibernate (SSH) 整合实例

    在整合Hibernate时,我们需要配置`hibernate.cfg.xml`文件来定义数据库连接信息、映射文件位置等。 ```xml &lt;hibernate-configuration&gt; &lt;session-factory&gt; &lt;property name="hibernate.dialect"&gt;org.hibernate....

    spring整合hibernate示例代码

    标题"spring整合hibernate示例代码"提示我们,我们将讨论如何在实际项目中结合这两个框架。Spring可以帮助管理Hibernate的SessionFactory和Transaction,提供声明式事务管理,以及通过AOP(面向切面编程)实现更灵活...

    Spring整合Hibernate.jar

    标题"Spring整合Hibernate.jar"意味着我们将讨论如何将这两个强大的框架集成在一起,以便在Spring管理的环境中使用Hibernate进行数据库操作。这通常涉及到以下步骤和知识点: 1. **引入依赖**:首先,你需要在项目...

    Spring整合Hibernate案例

    - 整合Spring和Hibernate的主要目的是利用Spring的管理能力,让Hibernate的DAO(数据访问对象)和SessionFactory可以通过Spring的IoC(控制反转)容器进行管理和注入,提高代码的可测试性和可维护性。 3. **整合...

    Spring+hibernate整合源代码

    1. **依赖注入**:Spring 提供的 DI(Dependency Injection)机制可以帮助管理 Hibernate SessionFactory 和 Session 实例,避免手动创建和管理这些对象。在配置文件中定义 SessionFactory 的 Bean,然后通过注解或 ...

    详细解释Spring与Hibernate的整合原理

    在 Spring 与 Hibernate 整合的过程中,处理数据源有两种主要的方法: 1. **仍然使用 Hibernate 自带的数据源**:在这种情况下,可以继续使用如上所述的 `hibernate.cfg.xml` 文件来配置数据源。这种方式的好处是...

    Spring与hibernate 整合 简单示例

    总结来说,Spring与Hibernate的整合使得Java开发人员能够更方便地管理数据库操作,并利用Spring的强大功能进行事务管理和组件装配。通过这个简单的示例,我们可以了解到如何配置Spring的环境,定义实体类,创建DAO和...

    三大框架整合(Spring+Hibernate+Struts1/Struts2)

    【三大框架整合(Spring+Hibernate+Struts1/Struts2)】 在IT行业中,SSH(Struts + Spring + Hibernate)是经典的Java企业级开发框架组合,用于构建高效、可维护的Web应用程序。以下是整合这三大框架的详细步骤,...

    Struts1.x Spring2.x Hibernate3.x DWR2.x整合工具文档v1.00

    &lt;param-name&gt;singleSession&lt;/param-name&gt; &lt;param-value&gt;true&lt;/param-value&gt; &lt;/init-param&gt; &lt;init-param&gt; &lt;param-name&gt;flushMode&lt;/param-name&gt; &lt;param-value&gt;AUTO&lt;/param-value&gt; &lt;/init-param&gt; &lt;/filter&gt; ...

    spring struts hibernate 整合

    Spring、Struts和Hibernate是Java Web开发中的三大框架,它们的整合是构建企业级应用的常见方式。Spring作为全面的轻量级应用框架,提供依赖注入(DI)和面向切面编程(AOP),用于管理和控制应用程序的生命周期;...

    Spring和Hibernate的整合操作示例

    整合Spring和Hibernate的主要目的是利用Spring的管理能力来控制Hibernate的SessionFactory和Session,以及事务管理。下面我们将详细探讨整合的步骤和方法。 1. **配置环境**: - 首先,确保你的项目中包含了Spring...

    spring整合hibernate所用相关jar包

    本文将深入探讨Spring整合Hibernate的相关知识点,适合初学者入门。 首先,我们需要理解Spring的核心理念。Spring框架提供了一个轻量级的容器,它能够管理应用程序中的对象,包括初始化、配置和依赖注入。AOP则是...

    spring 4.1+hibernate 4整合

    Spring 4.1 在整合Hibernate 4时,首先需要引入相关的依赖库。这通常通过Maven或Gradle的配置文件来完成,添加Spring和Hibernate的依赖项。例如,在Maven的pom.xml文件中,你需要添加以下依赖: ```xml ...

    hibernate和spring MVC配置整合

    **hibernate与Spring MVC配置整合详解** 在Java Web开发中,Spring MVC作为控制器层,负责处理用户请求,而Hibernate作为持久化框架,用于管理数据库操作。将这两者结合使用,可以实现MVC架构的高效数据访问。下面...

    Spring-hibernate结合使用全xml配置方式

    配置完成后,需要创建HibernateTemplate或SessionFactoryBean,以便Spring可以管理Hibernate的Session。例如: ```xml &lt;bean id="hibernateTemplate" class="org.springframework.orm.hibernate4.HibernateTemplate...

    spring整合hibernate

    接着,Spring整合Hibernate的关键在于`LocalSessionFactoryBean`,它负责创建Hibernate的SessionFactory。SessionFactory是Hibernate的核心对象,用于创建Session,处理与数据库的交互。配置`...

    Spring3整合Hibernate4测试Demo

    在"Spring3整合Hibernate4测试Demo"中,我们将探讨如何将Spring3作为服务层容器,管理Hibernate4的数据访问组件。这个Demo主要包含以下几个关键知识点: 1. **Spring的IoC(Inversion of Control,控制反转)**:...

    Spring整合hibernate(2)之基于HibernateTemplate的整合

    Spring整合Hibernate基于HibernateTemplate的方式,极大地简化了数据库操作,同时也让事务管理和代码的编写变得更加规范和高效。在实际项目中,可以根据需求进一步配置和优化,比如使用JPA的...

Global site tag (gtag.js) - Google Analytics