发布网友 发布时间:2022-04-23 21:18
共1个回答
热心网友 时间:2022-04-13 23:24
下面我们分析一下几种方法: 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.setI ... 在网上找的 不知对不对追问我的问题是,我现有100w数据,第一次打开时,查询出数据,那么系统 会生成缓存,会很慢,但是第二次以后,没有新半数据时,同样条件,那系统会读取缓存,所以会很快,