hibernate flush与commit

来源:互联网 发布:ov7670摄像头资料数据 编辑:程序博客网 时间:2024/05/22 07:44

最近遇到更新不成功  老大提到用flush()  但flush与commit有什么区别呢

        首先 flush是针对缓存的  commit是针对事务的

        其次 flush会清理缓存并执行sql 但是并不会提交事务 而commit 会先调用flush然后再提交事务

       最后得弄清楚的概念是flush是清理缓存 所谓清理是指按照持久化对象的状态来同步更新数据库 没有commit提交就是说还可以rollback的  但是若flush是在事务中则只是将sql缓存起来 ,只有commit之后对象才是真正的被持久化了。

0 0
原创粉丝点击