Hibernate merge()

来源:互联网 发布:系统更新软件 编辑:程序博客网 时间:2024/06/15 01:47

merge(obj)的执行流程:
1、在session缓存中判断该对象是否存在
若存在则判断其它属性是否有修改过,若无修改则不进行任何操作;若有修改则执行update语句
2、若session缓存中不存在则通过select语句从数据库中查询,若数据库中该记录,则执行update语句(当有属性被修改时)
3、session缓存和数据库中都查询不到该记录,则执行insert语句