有的时候你执行了更新什么的操作不一定能查出来;没有保存到数据库
以下的缓存是指一级缓存,即session;默认缓存是一级缓存;
flush的意思就是执行sql,但是还没有commit,没有持久化;再清除缓存,
getSession().flush();
getHibernateTemplae().flush();
clear是不执行sql,直接清楚缓存;
如果程序一开始是调用本地的查出来了,后来又调用了存储过程更新这条数据,后来又更新了这条数据,没有flush,没有clear就会造成存储过程没有更新到。
这个时候就要在update的时候flush clear