hibernate - [Hibernate]在批量提交之前访问缓存内存

标签 hibernate caching

我想在 Hibernate 中批量提交之前访问缓存内存。 我正在对用户进行计数,最多为 BATCH_SIZE

if (countUsers == BATCH_SIZE) {
    countUsers = 0;
    session.flush();
    session.clear();
    transaction.commit();
    session = HibernateUtil.getSessionFactory()
        .getCurrentSession();
    transaction = session.beginTransaction();
}

我正在做的是将 30 行存储在 cahce 中,然后将其保存到数据库中。但在将这些缓存行保存到数据库之前,我还需要这些行的信息。

怎么做?

最佳答案

您必须设置 hibernates jdbc 批量大小属性并确保事务管理

hibernate.jdbc.batch_size=50

你可以看到我的previuos post关于这个话题

关于hibernate - [Hibernate]在批量提交之前访问缓存内存,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7783813/

相关文章:

java - 将表映射到 Hibernate 中的两个继承表

sharepoint - 检查是否在 Sharepoint 中启用了 BlobCaching(无需查看 web.config)

java - 如何缩短 Gradle 依赖缓存文件夹名称?

c# - 在 MVC 中缓存列表集合

java - 无法创建唯一键约束

java - 在 Hibernate 中映射 Map<String,Foo>

java - 在 hibernate 中注释派生数据库列

java - hibernate,无法保存多对一关系

javascript - IE 8 缓存问题

linux - 有没有办法显示 linux 缓冲区缓存未命中?