EntityManager.flush 有什么作用以及为什么我需要使用它?

2024-01-15

我有一个 EJB,我将一个对象保存到数据库中。在我看到的一个示例中,一旦保存此数据(EntityManager.persist),就会调用 EntityManager.flush();为什么我需要这样做?我保存的对象未附加,并且稍后不会在该方法中使用。事实上,一旦保存,该方法就会返回,我希望资源能够被释放。 (示例代码也在删除调用中执行此操作。)

if (somecondition) {
    entityManager.persist(unAttachedEntity);
} else {
    attachedEntityObject.setId(unAttachedEntity.getId());
}
entityManager.flush();

致电EntityManager.flush();将强制数据立即保存在数据库中,如下所示EntityManager.persist()不会(取决于 EntityManager 的配置方式:冲洗模式类型 http://docs.oracle.com/javaee/5/api/javax/persistence/FlushModeType.html(AUTO 或 COMMIT)默认设置为 AUTO 并且将自动完成刷新。但如果将其设置为 COMMIT,则数据到底层数据库的持久化将被延迟,直到事务提交为止。

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

EntityManager.flush 有什么作用以及为什么我需要使用它? 的相关文章

随机推荐

  • SwiftUI 拖放文件

    我正在尝试向我的 SwiftUI Mac 应用程序添加 拖放 手势 功能 我想将文件从我的系统 桌面拖放到我的应用程序中 我发现在常规 Swift 中这是可能的 我现在正在尝试在 SwiftUI 中执行此操作 我找到一个onDrop Swi
  • UITableView didSelectRowAt 不称为 iOS 10,但适用于 9.3.5

    关于这个问题有很多问题 但到目前为止我找到的答案并不适用 在这种情况下 该表在 iOS 9 3 5 中正常工作 但不适用于 iOS 10 或 10 3 1 我已经排除了 没有正确设置委托 代表执行 3 个功能 didSelectRowAt
  • 我应该为所有内容编写单元测试吗?

    我想知道我是否应该为所有内容编写单元测试 有一些类很难编写单元测试 例如 我正在编写一些处理音频的程序 用于从麦克风捕获音频的类和用于向扬声器播放音频的类 我如何为这些类编写单元测试 我无法获得这些类的输出和输入 因此几乎不可能测试它们 我
  • 退出在子子程序中打开的 Word.Application

    我们宣布Word Application对象在Pro1下面的子函数 因为我们需要返回Word Document对象 应保持打开状态 我怎样才能退出父子例程中的Word应用程序 test01 我需要objWord声明于的对象Pro1函数将在没
  • Android SDK 中的虚拟摇杆

    我想在我的 Android 应用程序中制作一个虚拟操纵杆来控制遥控汽车 我怎样才能做到这一点 我可以使用 API 来执行此操作吗 我在网上查看的代码示例似乎不起作用 你可以看一下这个 很简单 有文档等 https github com co
  • 如何在 Visual Studio 2008 或 Visual Studio 2010 中设置 JavaScript 断点

    我正在尝试使用 Visual Studio 2010 调试 JavaScript 代码 但无法设置断点 我怎样才能做到这一点 我只是注意到了一些事情 每次我尝试调用一个函数 无论什么函数 在 JavaScript 中 不知何故jQuery
  • 如何通过命令行对 apk 进行签名

    请注意 我们已经在 Android SDK 的帮助下通过命令行创建了 apk 文件 现在 由于将其上传到 Google Play 商店 需要对 apk 进行签名 我们该怎么做呢 首先 您需要一个密钥库来开始该过程 您将使用此密钥库对您的 a
  • 使用 SFINAE 和 void_t 区分类型

    我遇到了一些情况 我必须编写两个函数 其中一个应该使用原始类型调用 std string 另一种应该用其他类型来调用 到目前为止 我以工作解决方案结束 template
  • 为什么 Google Appengine 连接到 CloudSQL 的速度这么慢

    当连接到 CloudSQL 后端时 我发现开发和生产之间的延迟存在巨大差异 比我预期的要大得多 我进行了一个测试 其中 我获取了 125 250 500 1000 和 2000 行 行大小约为 30 字节 我获取了每行大小 20 次 以获得
  • 如何对电子邮件发送进行单元测试?

    我想使用 NET C 框架或任何兼容的库测试我的电子邮件发送功能 有什么建议吗 如果您只需要测试发送电子邮件 您可以像这样配置您的 config 文件
  • java.lang.ClassCastException:org.glassfish.jersey.servlet.ServletContainer 无法转换为 javax.servlet.Servlet

    由于以下错误 我无法在 Tomcat 7 0 服务器上启动 Web 应用程序 java lang ClassCastException org glassfish jersey servlet ServletContainer cannot
  • 二叉搜索树中的中序遍历复杂性(使用迭代器)?

    相关问题 二叉树中序树遍历的时间复杂度O N https stackoverflow com questions 9658700 time complexity of inorder tree traversal of binary tre
  • 我们在 Get-Azure Resource -ApiVersion 参数中放入什么?

    我正在尝试获取特定的 Microsoft Azure 网站资源 以便我可以更改其某些属性 为了获得单一资源 Get AzureResource需要ApiVersion财产 我在哪里可以找到这个 参数集 获取单个资源 Get AzureRes
  • 如何使用相同的函数对 C 中的字符串进行异或加扰并再次返回?

    我正在尝试混淆程序中的字符串 目前 我只有一个简单的字符串反转工作 我希望能够对数据执行 XOR 加扰以使其更加安全 但是我尝试过的方法不起作用 使用相同的函数和输入类型来解码字符串 这对于字符串反转来说没有问题 因为它只是反转回来 但是可
  • Sails/Waterline 中的软删除

    尝试使用以下方法删除用户模型 Hard Delete User destroy id userId function err res Hard Delete 我需要对用户模型进行软删除 并且当前在删除和更新文档时将标志 isDeleted
  • 如何在 C# 中使用天气 api [关闭]

    Closed 这个问题是无关 help closed questions 目前不接受答案 我想实现天气信息 它将根据我的经度和纬度向我显示结果 我的应用程序从 GPS 获取坐标 因此获取它们不是问题 唯一的问题是 我想显示离我最近的城市的一
  • Sublime Text - 忽略特定文件类型的选项卡设置

    Sublime Text 3 是否可以忽略 translate tabs to spaces 特定文件类型的设置 即 tsv csv and txt 另外 ST3 是否可以在以下情况下不翻译选项卡 pasting 例如 我可以从 tsv 复
  • 错误:找不到“AppModule”的 NgModule 元数据

    我正在构建的 Angular 2 应用程序遇到问题 我一直在从不同的位置练习复制 粘贴技能 并消除了所有构建错误 但是当我在浏览器中启动它时 浏览器中出现错误 我看过这个帖子 https stackoverflow com question
  • 使用 IQKeyboardManagerSwift 不显示下一个/上一个按钮

    我在我的应用程序中使用 IQKeyboardManagerSwift 我看不到工具栏的下一个 上一个按钮 我附上了我的食物的屏幕截图 IQKeyboardManager shared enable true IQKeyboardManage
  • EntityManager.flush 有什么作用以及为什么我需要使用它?

    我有一个 EJB 我将一个对象保存到数据库中 在我看到的一个示例中 一旦保存此数据 EntityManager persist 就会调用 EntityManager flush 为什么我需要这样做 我保存的对象未附加 并且稍后不会在该方法中