EntityManager实体操作
来源:互联网 发布:ubuntu tty 中文乱码 编辑:程序博客网 时间:2024/04/29 07:05
EntityManager
持久化实体 persist(entity)
newEntity-----托管
托管-----无效,什么都不发生
删除状态------托管
游离-----提交时 例外抛出
更新实体
对实体的setXxx()方法的调用在容器flush时都会更新的
合并merge()
newEntity----copy一份----copy的那一份托管
托管----无效
删除状态---例外抛出
游离
1。如果已经存在一个id一样的托管对象了,参数(游离状态)内容复制到托管对象,并返回托管对象。
2。容器不存在id和游离对象相同的托管对象,创建一个游离对象的COPY并托管它,方法返回这个托管的引用。
总的来说:游离的对象永远不会变为托管对象,只会把内容合并进copy的或者存在的托管对象
remove()
托管----删除状态
remove游离 会异常
我们发现游离和删除状态的相关方法的交叉调用会抛异常
刷新实体 refresh()
只有托管对象才可以刷新
将数据库中最新的数据刷新实体
实体状态和生命周期事件
new ,没有ID,不在管理器的缓存中。
托管,容器flush时会同步到数据库
删除状态,仍然在管理器的缓存中,但是flush时,会删除数据库中的映射
游离,有ID,但是不在管理器的缓存中。
find() getreference() 从数据库中得到实体
flush()
clear () 所有的托管对象从缓存中清除,之前应该先flush
以下注解在实体内方法上,成为生命周期事件的回调函数
@PostLoad
@PrePersist @PostPersist
@PreUpdate @PostUpdate
@PreRemove @PostRemove
- 使用EntityManager操作实体
- EntityManager实体操作
- EntityManager实体操作
- EntityManager实体操作
- JPA 中使用EntityManager操作实体
- 操作EntityManager
- JPA 跨越EntityManager保存实体.
- EntityManager和持久化实体
- JPA的EntityManager操作
- EJB3 持久化实体管理器EntityManager
- EJB---->持久化实体管理器EntityManager
- EntityManager持久化实体(Hibernate面向jpa编程)
- 关于EntityManager(实体管理器)的常用方法
- ejb3的实体bean管理类EntityManager常用API
- 关于EntityManager(实体管理器)的常用方法
- 让每个实体拥有唯一ID——Entity和EntityManager类的封装
- 对EntityManager进行封装以简化JPA操作
- curd实体操作
- JTA 事务管理
- 数组去重
- RHCE131 Lecture 7
- MDB 消息驱动bean开发
- EJB开发web service
- EntityManager实体操作
- Ubuntu使用体会-----电影播放器
- 一道试题
- 几个不错的Erlang视频
- Oracle时间函数 (转)
- WEB层访问会话bean
- linux IP 命令使用举例
- Microsoft has replaced its venerable ISA Server with Forefront TMG 2010
- java验证码