Spring Data JPA实体概述
JPA提供了一种简单高效的方式来管理Java对象(POJO)到关系数据库的映射,此类Java对象称为JPA实体或简称实体。实体通常与底层数据库中的单个关系表相关联,每个实体的实例表示数据库表格中的某一行。
Spring Data JPA实体管理器
实体管理器概述
实体管理器(EntityManager)用于管理系统中的实体,它是实体与数据库之间的桥梁,通过调用实体管理器的相关方法可以把实体持久化到数据库中,同时也可以把数据库中的记录打包成实体对象。
实体管理器常用方法
- persist方法详解
对于不同状态下的实体,persist操作结果如下:
- 新建状态:实体状态迁移到托管状态
- 托管状态:实体状态不发生改变,但会执行数据库的insert操作
- 游离状态:方法的调用将会抛出异常信息
- 删除状态:实体将重返托管状态
- merge方法详解
对于不同状态下的实体,merge操作结果如下:
- 新建状态:系统会执行数据库insert操作,同时返回一个托管状态的实体
- 托管状态:实体状态不发生改变
- 游离状态:系统将实体的修改保存到数据库,同时返会一个托管状态的实体
删除状态:方法调用将抛出异常
- refresh方法详解