JPA实体状态详解:New、Managed、Detached、Removed
需积分: 45 76 浏览量
更新于2024-08-18
收藏 4.29MB PPT 举报
实体的状态-JAP 简介 入门知识
实体的状态是 Java Persistence API(JPA)中一个重要的概念,指的是实体对象在生命周期中的不同阶段。理解实体的状态是使用 JPA 进行持久化开发的基础。
**新建态(New)**
新建态是实体对象创建的初始状态,在这个状态下,实体对象尚未拥有持久化主键,也没有与持久化上下文建立联系。在这个状态下,实体对象不能被持久化,直到它被添加到持久化上下文中。
**受控态(Managed)**
受控态是实体对象已经拥有持久化主键,并与持久化上下文建立了联系。在这个状态下,实体对象可以被持久化,且可以被EntityManager管理。
**游离态(Detached)**
游离态是实体对象拥有持久化主键,但尚未与持久化上下文建立联系。在这个状态下,实体对象不能被持久化,直到它被重新添加到持久化上下文中。
**删除态(Removed)**
删除态是实体对象已经与持久化上下文建立联系,但已经被安排从数据库中删除。在这个状态下,实体对象将被从数据库中删除。
JPA概述
JPA(Java Persistence API)是一种Java规范,用于对象持久化。JPA是JavaEE5.0平台标准的ORM规范,使得应用程序以统一的方式访问持久层。JPA提供了以POJO编程模型为持久化对象的机制,通过JDK5.0注解或XML描述对象-关系表的映射关系,并将运行期的实体对象持久化到数据库中。
JPA的产生
JPA是我是EJB3.0规范的一部分,EJB3.0规范是JavaEE5版本的一部分。Sun引入新的JPAORM规范是为了简化现有JavaEE和JavaSE应用的对象持久化的开发工作,并整合ORM技术,统一各种ORM框架的规范。
JPA的实现
JPA的实现包括了多个供应商,例如Hibernate、TopLink、OpenJpa等。这些供应商提供了JPA的实现,并且提供了更多的功能和特性。
JPA的优势
JPA的优势包括:
* 简化了对象持久化的开发工作
* 提供了统一的访问持久层的方式
* 可以与多种数据库管理系统集成
JPA的缺点
JPA的缺点包括:
* 需要学习新的API和注解
* 需要了解数据库的结构和关系
JPA的主要技术
JPA的主要技术包括:
* POJO编程模型
* JDK5.0注解
* XML描述对象-关系表的映射关系
* EntityManager
* JPQL
JPQL
JPQL(Java Persistence Query Language)是JPA中的一种查询语言,用于查询持久化对象。JPQL提供了类似SQL的语法,但它是面向对象的查询语言,可以更方便地查询持久化对象。
JPA提供了一个统一的方式来访问持久层,并提供了多种功能和特性来简化对象持久化的开发工作。理解实体的状态和JPA的概述是使用JPA进行持久化开发的基础。
2021-05-27 上传
2012-07-27 上传
2021-03-03 上传
2021-02-08 上传
2008-09-21 上传
2021-02-18 上传
2023-03-15 上传
2021-03-05 上传
猫腻MX
- 粉丝: 20
- 资源: 2万+
最新资源
- MATLAB新功能:Multi-frame ViewRGB制作彩色图阴影
- XKCD Substitutions 3-crx插件:创新的网页文字替换工具
- Python实现8位等离子效果开源项目plasma.py解读
- 维护商店移动应用:基于PhoneGap的移动API应用
- Laravel-Admin的Redis Manager扩展使用教程
- Jekyll代理主题使用指南及文件结构解析
- cPanel中PHP多版本插件的安装与配置指南
- 深入探讨React和Typescript在Alias kopio游戏中的应用
- node.js OSC服务器实现:Gibber消息转换技术解析
- 体验最新升级版的mdbootstrap pro 6.1.0组件库
- 超市盘点过机系统实现与delphi应用
- Boogle: 探索 Python 编程的 Boggle 仿制品
- C++实现的Physics2D简易2D物理模拟
- 傅里叶级数在分数阶微分积分计算中的应用与实现
- Windows Phone与PhoneGap应用隔离存储文件访问方法
- iso8601-interval-recurrence:掌握ISO8601日期范围与重复间隔检查