hibernate merge方法

来源:互联网 发布:hifi耳机推荐 知乎 编辑:程序博客网 时间:2024/04/30 07:48

转载来自

hibernate 自动生成 dao 包含的几个方法

http://blog.csdn.net/wmh0599/article/details/6785308

 

重写SAVE().

DEELTE(Integer id)

delete(User persistentInstance)

 

merge(User detachedInstance)

public void attachDirty(User instance)

public void attachClean(User instance)

___________________________________Spline_________________________________________

http://littie1987.iteye.com/blog/1039082

文章详细介绍了

Hibernate的merge()方法

POJO对象处于游离态、持久态、托管态。使用merge()的情况。

测试过程中游离态、持久态、有用

1、游离态ID为空,数据库肯定不存在,调用merge(),直接插入数据库。

2、持久态,pojo对象从数据库中取出的行记录,调用merge(),自动比较该对象和数据库对象是否发生更改,是则更新该行记录。

 

3、托管态,通过编程的方式指定ID,程序构造的POJO对象,调用merge(),自动比较数据库该ID行记录与POJO对象的属性。不一样则更新。

但通过程序构造的POJO对象,并指定ID。但POJO的ID为native,并指定了数据库的sequence,调用merge()后,程序指定的ID,还是会被改成新的序列ID,则,该POJO对象还是成了ID不为空、数据库不存在该ID的游离态。

___________________________________Spline_________________________________________

 

http://topic.csdn.net/u/20080703/17/baa09592-55c9-45be-b4dd-1f312be2f064.html文章进行回复暂时还不能理解attachDirty、attachDirty