Hibernate中驱除缓存对象方法

Hibernate中清除缓存对象方法我们知道,如果一味的让新的数据放到缓存中去,那我们计算机肯定会内存崩溃。所

Hibernate中清除缓存对象方法
    我们知道,如果一味的让新的数据放到缓存中去,那我们计算机肯定会内存崩溃。所以进行必要的缓存清除还是很有必要的。
下面我们分析一下几种方法:
1 clear()方法
  我们可以在session-factory标签下创建property标签,name属性为hibernate.jdbc.batch_size,值为我们想要设定的数字,假如为100,下一步当我们执行操作flush()发送SQL语句时候调用session.clear()方法,就可以实现清除缓存的效果了。

for(int i=0;i<1000;i++){   Order order = new Order();   order.setId();   session.save(order);   if(i%100==0){      session.flush();      session.clear();   }}


2 evict()方法
  该方法于上一个方法不同,它只能用于处理单个对象的清除工作。
for(int i=0;i<1000;i++){   Order order = new Order();   order.setId();   session.save(order);   session.evict();//清除session缓存   SessionFactory.evict();//清除二级缓存}