请教下hibernate中一级缓存的问题
请教一个问题,如下
得到了session,然后save了一个实体,接着使用session.clear,再事务提交,请问数据库中的表会有此user对象吗
我在想清除了缓存后,commit的应该是没有内容的啊,不知道想法正确不,请大侠指点,谢谢
比如
session.sava(user);
session.clear();
session.begintrancecation.commit();
------解决方案--------------------
hibernate一级缓存是指session缓存
hibernate还有sessionFactory级的2级缓存
一般不这样使用:
session.save(user);
session.clear();
session.begintrancecation.commit();
这种没试过,个人认为数据库中的表不会有此user对象,你自己试下就明白了,
一般这样用:
session.save(user);
seesion.flush();
session.clear();
session.begintrancecation.commit();
这种用法一般用于批量更新:
Trancecation tran = session.begintrancecation();
if(i%N == 0){
session.save(user);
seesion.flush();
session.clear();
tran.commit();
tran = session.begintrancecation();
}