session.flush()和session.clear()就针对session的一级缓存的处理. 简单的说, 1 session.flush()的作用就是将session的缓存中的数据与数据库同步. 2 session.clear()的作用就是清除session中的缓存数据(不管缓存与数据库的同步). 执行完session.flush()时,并不意味着数据就肯定持久化到数据库中的,因为事务控制着数据库,如果事务提交失败了,缓存中的数据还是照样会被回滚的. flush本意是冲刷,这个方法大概取…