原文来自:
http://xuxiaohongok.iteye.com/admin/blogs/new
从JPA 2.0 EntityManager获得Hibernate Session
据Emmanuel Bernard说,组织采用Hibernate来执行ORM工作是喜欢的一种选择是使用JPA EntityManager。他是Jboss的数据架构师,也是Hibernate团队一员。因此,如果IT开发人员需要得到基础 Hibernate Session来访问它的附加功能的话,他们应该怎么做?幸运地,JPA规范使提访问基本Hibernate Session成为可能,即使你的应用正在使用JSR-317标准。
JPA 1.0访问Hibernate Session
为也从JPA 1.0 EntityManager中得到Hibernate Session,那么下面的代码是必不可少的:
org.hibernate.Session hibernateSession = (Session)entityManager.getDelegate();
不幸地,这个语法不是完全可移植的,虽然此代码可在Jboss应用服务器上运行良好,但运行在其它平台时,将会出现不可预测的后果。
JPA 2.0访问Hibernate Session
很幸运,JPA 2.0提供了更好的、更可移植的,更加跨平台的方法,来获取Hibernate Session。代码如下:
Session session = entityManager.unwrap(org.hibernate.Session.class);
就是它了!当与JPA EntityManager一起合作是,获取基本的Hibernate实现类是如此地简单。因此,此代码成为你的HibernateUtil类的一部分,使永久存储成为可能,与你的实体beans一起工作,成为多态的Hibernate Session,从而允许你利用更多的简洁功能,超越JPA规范,凌驾于JPA之上。
jpa批量插入
http://blog.csdn.net/lovewangyanjiao/article/details/6644934
分享到:
相关推荐
在IT行业中,构建一个完整的Web应用常常涉及到多个技术的整合,本示例中提到了"HibernateJPA+Struts2.0+MariaDB"的组合,这是一个经典的Java Web开发架构,用于实现用户登录功能。接下来,我们将深入探讨这些技术...
3. Hibernate的实体类定义,配置文件(hibernate.cfg.xml)设置,以及如何使用SessionFactory和Session进行数据库操作。 4. 三者之间的协作:Spring作为核心容器管理所有组件,Struts 2负责请求的分发,Hibernate...
Struts2.0、Hibernate3.0和Spring2.0是Java Web开发中经典的三大框架,它们的整合是企业级应用开发的常见实践。Struts2作为MVC(Model-View-Controller)框架,主要负责处理HTTP请求并调度业务逻辑;Hibernate是一个...
标题 "整合compass2.0 spring hibernate示例源程序" 提供了我们即将探讨的核心内容:一个集成Compass 2.0、Spring和Hibernate的示例应用。这是一份源代码,旨在帮助开发者理解如何在实际项目中有效地将这三个关键...
Hibernate 3.3版本提供了对JPA 1.0规范的全面支持,包括 Criteria 查询、HQL(Hibernate Query Language)以及对多对多关联的改进。此外,它还增强了缓存策略,以提高性能。 **SSH集成** 集成Spring、Struts和...
1. **Spring管理Hibernate SessionFactory**:Spring通过其`LocalSessionFactoryBean`来创建和管理SessionFactory,提供事务范围的Session和Transaction。 2. **Struts2与Spring整合**:通过Struts2的Spring插件,...
在IBM Websphere 8.5环境中配置JPA 2.1的支持,主要是因为该版本默认仅支持JPA 2.0,而某些项目可能需要使用JPA 2.1提供的新特性和功能。以下是一步步指导如何进行配置: 1. **修改Hibernate配置文件**: 在项目的...
Hibernate 3.3版本增加了对JPA的支持,优化了HQL(Hibernate查询语言),并提供了更强大的缓存策略。 S2SH整合的关键步骤如下: 1. **环境配置**:首先,确保安装了JDK、Tomcat服务器、Eclipse或IntelliJ IDEA等...
但由于Struts1.2已较为老旧,现在更多地推荐使用Struts2或者Spring MVC作为表现层框架,Spring4或更高版本作为应用框架,而Hibernate5或JPA作为持久层工具,以获得更好的性能和更丰富的功能。然而,理解SSH的整合...
- Query(JPA 2.0引入)和CriteriaQuery(JPA 2.0引入):这两个API在Hibernate中也得到了支持,提供了更现代和灵活的查询方式。 **6. Session和Transaction** 在进行数据操作时,通常会涉及到事务管理。Session...
3. **JPA 2.0支持**:Hibernate 3.6.0 Final全面支持Java Persistence API的第二个版本,提供了一组标准接口和注解,使得项目具有更好的可移植性。 4. **Criteria API增强**:这个版本的Criteria API更加完善,允许...
在Spring中整合Hibernate,可以方便地实现数据持久化,并且Spring可以管理Hibernate的SessionFactory和Session,以确保事务的一致性。 在整合这三个框架时,通常会遵循以下步骤: 1. **环境配置**:安装并配置JDK...
1. **Java Persistence API (JPA) 2.0 支持**:Hibernate 4全面支持JPA 2.0规范,允许开发者利用JPA进行ORM编程,同时也保留了原有的Hibernate API供选择。 2. **改进的事件系统**:引入了基于JSR 299的事件模型,...
然后,通过SessionFactory获取Session,使用Session进行CRUD(创建、读取、更新、删除)操作。 - **测试和优化**:完成上述步骤后,进行单元测试和集成测试,确保所有组件正常工作。根据需求,可以优化性能,例如...
7. **支持JPA 2.0**:Hibernate 3.6 兼容了Java Persistence API 2.0 规范,使得开发者可以选择使用标准的 JPA 进行开发。 ### Hibernate 3.6 使用步骤 1. **引入依赖**:在项目中添加 Hibernate 3.6 的库依赖,...
- `hibernate-jpa-2.0-api.jar`:JPA 2.0的API,用于编写符合规范的JPA代码。 - `jta.jar`:Java Transaction API,处理事务管理。 - `slf4j-api.jar`和`slf4j-log4j12.jar`:日志框架,用于记录Hibernate运行时...
1. 支持JPA 2.0:3.6.4.Final版本遵循Java Persistence API(JPA)2.0规范,提供了更强大的查询语言(JPQL)和 Criteria 查询,使得数据查询更为灵活。 2. 改进的性能:在这一版本中,Hibernate对缓存机制进行了优化...
Hibernate通过`hibernate-jpa-2.0-api.jar`与JPA 2.0规范对接,同时`javassist.jar`负责运行时字节码操作,以实现动态代理和类增强。`jta.jar`则是Java Transaction API,用于管理事务,确保数据的一致性。 3. **...
3. **hibernate-jpa-2.0-api**: 这是JPA 2.0的API规范,定义了持久化接口和注解。 4. **hibernate-tools**: 包含了Hibernate的辅助工具,如逆向工程(可以生成Java实体类)、HQL编辑器等。 5. **文档**:包括用户...
标题 "dwr2.0整合Struts1.3+hibernate3.1+spring2.5的项目" 涉及的是一个经典的Java Web开发技术集成,这其中包括Direct Web Remoting (DWR) 2.0、Struts 1.3、Hibernate 3.1和Spring 2.5。这个项目可能是为了展示...