标签:
清理 session 缓存
1. flush:使数据表中的记录和session缓存中的对象的状态保持一致,为了保存一致,则可能会发送相应的SQL
001. 在 Transaction 的 commit() 方法中:先调用 session 的 flush 方法,再提交事务
002. flash 方法可能会发送 SQL 语句,但是不会提交事务
003. 注意: 在未提交事务或显示调用 session.flush() 方法,也有可能会进行 flush 操作;
1. 执行 HQL 或 QBC 查询,会先执行 flush() 操作,以得到数据表的最新的记录
2. 若记录的 ID 是由底层数据库使用自增的方式生成的,则在调用 save() 方法后,就会立即发送 insert 方法
因为 save() 方法后,必须保证对象的 ID 是存在的。
2. refresh: 会强制发送 select 语句,以使 Session 缓存中对象的状态和数据表中对应的记录保持一致
3. clear(): 清理缓存
标签:
原文地址:http://www.cnblogs.com/cfb513142804/p/4246796.html