Hibernate:flush() 和 commit()

2023-11-24

打电话是个好习惯吗org.hibernate.Session.flush()分别地?

正如中所述org.hibernate.Session docs,

必须在工作单元结束时、提交事务并关闭会话之前调用(根据刷新模式,Transaction.commit() 调用此方法)。

你能解释一下打电话的目的吗flush()明确地如果org.hibernate.Transaction.commit()已经会这么做了吗?


在 Hibernate 手册中你可以看到这个例子

Session session = sessionFactory.openSession();
Transaction tx = session.beginTransaction();

for (int i = 0; i < 100000; i++) {
    Customer customer = new Customer(...);
    session.save(customer);
    if (i % 20 == 0) { // 20, same as the JDBC batch size
        // flush a batch of inserts and release memory:
        session.flush();
        session.clear();
    }
}

tx.commit();
session.close();

如果不调用flush方法,你的一级缓存将抛出OutOfMemoryException

另外你可以看看这篇关于冲水的帖子

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Hibernate:flush() 和 commit() 的相关文章

  • Grails 3.x bootRun 失败

    我正在尝试在 grails 3 1 11 中运行一个项目 但出现错误 失败 构建失败并出现异常 什么地方出了错 任务 bootRun 执行失败 进程 命令 C Program Files Java jdk1 8 0 111 bin java
  • 如何默认将 Maven 插件附加到阶段?

    我有一个 Maven 插件应该在编译阶段运行 所以在项目中consumes我的插件 我必须做这样的事情
  • Java中反射是如何实现的?

    Java 7 语言规范很早就指出 本规范没有详细描述反射 我只是想知道 反射在Java中是如何实现的 我不是问它是如何使用的 我知道可能没有我正在寻找的具体答案 但任何信息将不胜感激 我在 Stackoverflow 上发现了这个 关于 C
  • Java - 将节点添加到列表的末尾?

    这是我所拥有的 public class Node Object data Node next Node Object data Node next this data data this next next public Object g
  • 在 java 类和 android 活动之间传输时音频不清晰

    我有一个android活动 它连接到一个java类并以套接字的形式向它发送数据包 该类接收声音数据包并将它们扔到 PC 扬声器 该代码运行良好 但在 PC 扬声器中播放声音时会出现持续的抖动 中断 安卓活动 public class Sen
  • 如何找到给定字符串的最长重复子串

    我是java新手 我被分配寻找字符串的最长子字符串 我在网上研究 似乎解决这个问题的好方法是实现后缀树 请告诉我如何做到这一点或者您是否有任何其他解决方案 请记住 这应该是在 Java 知识水平较低的情况下完成的 提前致谢 附 测试仪字符串
  • 加速代码 - 3D 数组

    我正在尝试提高我编写的一些代码的速度 我想知道从 3d 整数数组访问数据的效率如何 我有一个数组 int cube new int 10 10 10 我用价值观填充其中 然后我访问这些值数千次 我想知道 由于理论上所有 3d 数组都存储在内
  • 列出jshell中所有活动的方法

    是否有任何命令可以打印当前 jshell 会话中所有新创建的方法 类似的东西 list但仅适用于方法 您正在寻找命令 methods all 它会打印所有方法 包括启动 JShell 时添加的方法 以及失败 被覆盖或删除的方法 对于您声明的
  • JavaMail 只获取新邮件

    我想知道是否有一种方法可以在javamail中只获取新消息 例如 在初始加载时 获取收件箱中的所有消息并存储它们 然后 每当应用程序再次加载时 仅获取新消息 而不是再次重新加载它们 javamail 可以做到这一点吗 它是如何工作的 一些背
  • 操作错误不会显示在 JSP 上

    我尝试在 Action 类中添加操作错误并将其打印在 JSP 页面上 当发生异常时 它将进入 catch 块并在控制台中打印 插入异常时出错 请联系管理员 在 catch 块中 我添加了它addActionError 我尝试在jsp页面中打
  • 为什么HashMap不能保证map的顺序随着时间的推移保持不变

    我在这里阅读有关 Hashmap 和 Hashtable 之间的区别 http javarevisited blogspot sg 2010 10 difference Between hashmap and html http javar
  • 加密 JBoss 配置中的敏感信息

    JBoss 中的标准数据源配置要求数据库用户的用户名和密码位于 xxx ds xml 文件中 如果我将数据源定义为 c3p0 mbean 我会遇到同样的问题 是否有标准方法来加密用户和密码 保存密钥的好地方是什么 这当然也与 tomcat
  • 如何从终端运行处理应用程序

    我目前正在使用加工 http processing org对于一个小项目 但是我不喜欢它附带的文本编辑器 我使用 vim 编写所有代码 我找到了 pde 文件的位置 并且我一直在从 vim 中编辑它们 然后重新打开它们并运行它们 重新加载脚
  • 声明的包“”与预期的包不匹配

    我可以编译并运行我的代码 但 VSCode 中始终显示错误 早些时候有一个弹出窗口 我不记得是什么了 我点击了 全局应用 从那以后一直是这样 Output is there but so is the error The declared
  • 获取 JVM 上所有引导类的列表?

    有一种方法叫做findBootstrapClass对于一个类加载器 如果它是引导的 则返回一个类 有没有办法找到类已经加载了 您可以尝试首先通过例如获取引导类加载器呼叫 ClassLoader bootstrapLoader ClassLo
  • 静态变量的线程安全

    class ABC implements Runnable private static int a private static int b public void run 我有一个如上所述的 Java 类 我有这个类的多个线程 在里面r
  • Firebase 添加新节点

    如何将这些节点放入用户节点中 并创建另一个节点来存储帖子 我的数据库参考 databaseReference child user getUid setValue userInformations 您需要使用以下代码 databaseRef
  • JGit 检查分支是否已签出

    我正在使用 JGit 开发一个项目 我设法删除了一个分支 但我还想检查该分支是否已签出 我发现了一个变量CheckoutCommand但它是私有的 private boolean isCheckoutIndex return startCo
  • 按日期对 RecyclerView 进行排序

    我正在尝试按日期对 RecyclerView 进行排序 但我尝试了太多的事情 我不知道现在该尝试什么 问题就出在这条线上适配器 notifyDataSetChanged 因为如果我不放 不会显示错误 但也不会更新 recyclerview
  • Spring Boot @ConfigurationProperties 不从环境中检索属性

    我正在使用 Spring Boot 1 2 1 并尝试创建一个 ConfigurationProperties带有验证的bean 如下所示 package com sampleapp import java net URL import j

随机推荐

  • Angular2 - Http POST 请求参数

    我正在尝试发出 POST 请求 但无法使其正常工作 testRequest var body username myusername password mypassword var headers new Headers headers a
  • css3 webkit动画停止在div上:悬停

    我尝试使用 webkit animation 和 webkit keyframes 制作动画 我有一个 div 动画 里面有子 div 当我的鼠标位于孩子上方时 我会停止父母的 webkit 动画 有例子吗 Thanks 不幸的是CSS中没
  • Linux 上的 openSSL 证书验证 [关闭]

    Closed 这个问题是无关 目前不接受答案 JKJS 我有这个证书链 cert pem self signed gt cert pem gt cert pem 所有三个证书都是我生成的 任何地方都没有使用互联网连接 这是完美的离线工作 现
  • XSS 安全。来自同一域的 2 个 iframe 之间的通信

    域 abc com 有一个包含 2 个 iframe 的页面 它们都是从域 xyz com 加载的 XSS 安全性是否会阻止这两个 iframe 之间的 JavaScript 访问 通信 交互 嗯 这取决于你所说的沟通是什么意思 似乎某种类
  • 访客设计模式-返回类型

    我使用访客设计模式来解决我们系统中的问题之一 作为如何实现它的参考 我使用了工厂现场 and 这个 YouTube 视频 在 DoFactory 示例中 访问者使用返回类型为 void 的方法 而在 YouTube 视频中 作者使用 dou
  • 将代码从 Mathematica 复制到其他平台的已知问题?

    我刚刚注意到 如果你在 MMA 8 0 1 win7 64 中有这个 然后你将它复制到SO 只需ctrl c ctrl v 你会得到这个 maxY minY stepy maxX minX stepx 这是数学上不等价 应该是这样的 max
  • AVCaptureSession 收到内存警告并无故崩溃

    我正在开发一个处理高清照片的应用程序 我正在使用 AVCaptureSession 拍照 停止它 然后对该照片应用效果 让我疯狂的是 一切都运行良好 仪器告诉我 我正确且按时地释放了我使用的所有内存 是的 它确实很高 有时达到 100mb
  • 为什么 Xcode 构建配置的精确副本会失败?

    我有一个react native具有桥接 Swift 代码的应用程序 可以使用 Xcode 毫无问题地构建 运行和存档10 0使用默认的Release and Debug构建配置 我用Xcode gt Product gt Archive或
  • 如何叠加不同单元格的图?

    在我笔记本的一个单元格中 我已经用以下内容绘制了一些内容 myplot plt figure plt plot x y 现在 在不同的单元格中 我想再次绘制完全相同的图形 但在其顶部添加新的图形 类似于两次连续调用所发生的情况 plt pl
  • 角度材质 - 更改单击的垫列表选项的颜色

    是否可以更改选中复选框的默认颜色 mat pseudo checkbox checked
  • preg_match_all() [function.preg-match-all]: 未知修饰符 ']'

    使用了几种不同的模式 但它们都出现了这个错误 那么出了什么问题呢 我要诊断的最短的一个是 pattern
  • 为什么使用“*”构建视图不好?

    为什么使用 构建视图不好 假设您有一个复杂的联接 并且所有字段都可能在某处使用 然后您只需选择所需的字段即可 SELECT field1 field2 FROM aview WHERE 视图 aview 可以是SELECT table1 t
  • 不需要导出仅包含虚拟/内联函数的类?

    在 Win32 上的 C 中 假设我有一个带有声明类的头文件的 DLL DLL 导出一些获取该类实例的指针 引用的方法 例如工厂函数 我是否正确地认为 如果只在其实例上调用虚拟或内联函数 则无需使用 declspec 将该类标记为导出 相反
  • 导入错误:无法导入名称 _imaging

    我安装了Pillow 然后我想做 from PIL import Image 我收到以下错误 Traceback most recent call last File
  • 如何在 MySQL 中搜索嵌套 JSON

    我使用 MySQL 5 7 和本机 JSON 数据类型 样本数据 code 2 stores code 100 quantity 2 code 200 quantity 3 code 4 stores code 300 quantity 4
  • 将同一对象两次添加到 ManyToManyField

    我有两个 Django 模型类 class A models Model name models CharField max length 128 irrelevant class B models Model a models ManyT
  • Mac OS X shell 实用程序,显示多核系统中各个 CPU 的使用情况

    我一直在寻找一个 osx 实用程序来显示每个 cpu 的 cpu 使用情况 例如 中央处理器 0 10 中央处理器 1 2 我知道有很多方法可以在其他类 Unix 系统 proc mpstat 等 中获取此信息 但在 osx 中都不起作用
  • 检查对象数组是否包含某个键

    我需要确定对象数组中是否存在某个键 这是一个示例数组 arrOfObj mainKey1 subKey1 innerKey1 innerMostKey1 key1 value mainKey2 key2 value mainKe
  • 如何使用 Javascript 下载、压缩和保存多个文件并获得进度?

    我正在创建一个 Chrome 扩展程序 需要从网站下载多个文件 图像和 或视频 这些文件可能很大 所以我想向用户显示下载进度 经过一番研究 我发现目前可能的解决方案可能是 使用 XMLHttpRequests 下载所有文件 下载后 使用 J
  • Hibernate:flush() 和 commit()

    打电话是个好习惯吗org hibernate Session flush 分别地 正如中所述org hibernate Session docs 必须在工作单元结束时 提交事务并关闭会话之前调用 根据刷新模式 Transaction com