Hibernate EntityManager 3.5.0-Final 用户指南
需积分: 9 183 浏览量
更新于2024-08-01
收藏 449KB PDF 举报
"《Hibernate EntityManager 3.5.0_Final》是Hibernate ORM框架的一个参考文档,专注于介绍如何在Java环境中,特别是EJB3容器和Java SE环境下使用EntityManager进行JPA(Java Persistence API)持久化操作。文档由Emmanuel Bernard、Steve Ebersole和Gavin King共同撰写。"
在JPA中,EntityManager是核心组件,它提供了对象/关系映射(ORM)的接口,用于管理实体对象的生命周期和持久化。文档首先介绍了JPA持久化的概念:
1. **架构**:
- **定义**:阐述了实体(Entity)、实体管理器(EntityManager)、持久化上下文(Persistence Context)等关键概念。
- **容器环境(如EJB3)**:区分了容器管理的实体管理器(Container-managed EntityManager)和应用管理的实体管理器(Application-managed EntityManager)。
- **容器管理的实体管理器**:由容器自动创建和管理,生命周期与EJB会话bean绑定。
- **应用管理的实体管理器**:由应用程序代码手动创建和管理。
- **持久化上下文范围**:描述了实体管理器的生命周期及其关联的持久化上下文。
- **持久化上下文传播**:讨论了在不同事务和方法调用之间如何处理持久化上下文。
2. **设置与配置**:
- **设置**:涵盖了初始化Hibernate EntityManager的基本步骤。
- **配置与引导**:包括打包方式、实体扫描、属性配置以及启动流程。
- **事件监听器**:允许用户自定义持久化事件的处理,如保存、更新和删除时的行为。
- **在Java SE环境下获取EntityManager**:在非EJB环境中如何创建和使用实体管理器。
- **其他**:可能涉及的其他配置和使用细节。
3. **与对象的工作**:
- **实体状态**:实体可以处于瞬时、持久、托管和脱离四种状态。
- **使对象持久化**:将Java对象转化为数据库记录的过程。
- **加载对象**:根据主键或查询条件获取持久化对象。
- **查询对象**:通过JPA的查询语言(JPQL)或Criteria API执行查询。
- **修改持久化对象**:对持久化对象的改动会被跟踪并同步到数据库。
- **脱离对象**:对象从持久化上下文移除,但其状态可被保留。
- **修改脱离对象**:在对象脱离后进行的修改需要重新附加到持久化上下文才能持久化。
- **自动状态检测**:Hibernate自动检测对象状态的变化。
- **删除管理的对象**:从数据库中移除对象。
- **刷新持久化上下文**:更新数据库与持久化上下文中的数据同步。
- **在事务内刷新**:事务提交前的刷新行为。
- **在事务外刷新**:非事务环境下刷新的注意事项。
- **传递性持久化**:关联对象的持久化处理,例如级联操作。
文档还涵盖了事务管理、查询优化、性能调优、第二级缓存、懒加载、多态性、继承和复合类型等更高级的主题,为开发者提供了一个全面理解Hibernate EntityManager及其在JPA中的使用的指南。
124 浏览量
2009-03-12 上传
162 浏览量
2021-05-31 上传
2021-05-31 上传
2021-05-31 上传
2021-05-31 上传
2021-10-02 上传
2022-09-21 上传
寒城子
- 粉丝: 0
- 资源: 13
最新资源
- 不看后悔的人事管理系统论文
- jmeter测试流程
- 图书管理系统_概要规划说明书
- 图书管理系统_软件开发设计书
- iBATIS 入门指南
- 很不错的java面试宝典
- C#函数方法集(汇总c#.net常用函数和方法集)
- Servlet_JSP
- 硬件必读硬件必读\硬件必读\硬件必读\
- Apache+ActiveMQ教程.pdf下载
- plsql21天自学通
- A Novel Invisible Color ImageWatermarking Scheme using Image Adaptive Watermark Creation and Robust Insertion-Extraction
- BerkeleyDB
- MapInfo Professional操作指南(pdf)
- 软件需求变更管理七步法
- 计算机软件测试面试题