persistence.xml 不同事务类型属性

2024-02-20

在 persistence.xml JPA 配置文件中,您可以有如下行:

<persistence-unit name="com.nz_war_1.0-SNAPSHOTPU" transaction-type="JTA">

或者有时:

<persistence-unit name="com.nz_war_1.0-SNAPSHOTPU" transaction-type=”RESOURCE_LOCAL”>

我的问题是:

有什么区别transaction-type="JTA" and transaction-type=”RESOURCE_LOCAL” ?

我还注意到一些 persistence.xml 文件缺少事务类型。这是对的吗?


Defaults

默认为JTA在 JavaEE 环境中并RESOURCE_LOCAL在 JavaSE 环境中。

RESOURCE_LOCAL

With <persistence-unit transaction-type="RESOURCE_LOCAL">你负责EntityManager (PersistenceContext/Cache) 创建和跟踪

  • 您必须使用EntityManagerFactory得到一个EntityManager
  • 所结果的EntityManager实例是一个PersistenceContext/Cache An EntityManagerFactory可以通过注射@PersistenceUnit仅注释(不@PersistenceContext)
  • 您无权使用@PersistenceContext引用类型单位RESOURCE_LOCAL
  • 您必须使用EntityTransaction用于开始/提交每次调用的 APIEntityManger
  • Calling entityManagerFactory.createEntityManager()两次导致两个不同的结果EntityManager实例,因此有两个单独的PersistenceContexts/Caches.
  • 拥有多个实例几乎从来都不是一个好主意EntityManager正在使用(除非您已销毁第一个,否则不要创建第二个)

JTA

With <persistence-unit transaction-type="JTA">容器就可以了EntityManager (PersistenceContext/Cache)创建和跟踪。

  • 您不能使用EntityManagerFactory得到一个EntityManager
  • 你只能得到一个EntityManager由容器提供
  • An EntityManager可以通过注射@PersistenceContext仅注释(不@PersistenceUnit)
  • 您无权使用@PersistenceUnit引用 JTA 类型的单元
  • The EntityManager容器给出的是对PersistenceContext/Cache与 JTA 事务关联。
  • 如果没有 JTA 事务正在进行,则EntityManager无法使用,因为没有PersistenceContext/Cache.
  • 每个人都有一个EntityManager在同一交易中引用同一单位将自动具有对同一单位的引用PersistenceContext/Cache
  • The PersistenceContext/Cache在 JTA 提交时刷新并清除
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

persistence.xml 不同事务类型属性 的相关文章

随机推荐

  • 如何修复 Microsoft Edge 中不显示的 Web 组件

    我正在尝试 lit element 在 Chrome 和 Firefox 等浏览器上一切都很顺利 但当我尝试 Microsoft Edge 和 IE11 时遇到了问题 在 Chrome 和 Firefox 中显示的 Web 组件在 Micr
  • 如何将犰狳矩阵转换为向量的向量?

    我创建了一个犰狳 C 矩阵 如下所示 arma mat A A zeros 3 4 我想将其转换为由定义的向量组成的向量 std vector lt std vector
  • 安装我的 nuget 包后执行操作

    我们创建了很多 NuGet 包 其中一个是一个工具 它包含一个特殊的编译器 它的安装就像一个dotnet tool 命令的名称是 PolyGen 我们使用了类似的机制Grpc Tools使用 这意味着我们已经在 NugetPackage 中
  • 让 vim 修改文件而不是移动新版本?

    我希望我的应用程序在保存文件时自动更新 因此 我使用inotify ubuntu 来创建检测事件的观察者 问题是vim覆盖文件而不是更新它 所以我的观察者在第一次更新后就丢失了 我想知道 有没有办法设置 vim 使其不使用交换文件并直接更新
  • 如何为asp.net web api编写集成测试

    我正忙着用 asp net web api 设计一个 web 服务 我想开始对每个控制器进行单元测试 到目前为止 这是我的测试课 TestClass public class MyDevicesControllerTest TestMeth
  • mpdf 忽略 javascript

    我在这里有一个问题 我已经使用缓冲来使用 mpdf 获取 pdf 文件 但我在这里有点困惑 我正在缓冲的页面上有一些 javascript 但是从 javascript 生成的内容没有转换为 pdf 让我说清楚 假设我有这个元素 div d
  • ios 访问主窗口或视图

    我想知道是否有一种简单的方法可以访问 IOS 中的主窗口或视图 类似于 UIScreen mainScreen 谢谢 Try UIWindow frontWindow UIApplication sharedApplication wind
  • 如何使用 1 个 mySQL 查询返回所有结果的数值箱线图数据?

    tbl votes id item id vote 当然 我们可以通过以下方式解决这个问题 the smallest observation so the lower quartile lq the median me the upper
  • 通过 Swift 设置 ARKit 方向

    我正在开发一个 ARKit 应用程序OpenGL 因此直接使用 ARKit 而不是使用 SceneKit 默认情况下 ARKit 设置为横向 但我无法找到任何旋转为纵向的文档或示例 SceneKit 示例适用于纵向 但Metal示例仅适用于
  • RPC 模型中的correlationId 和临时队列 - AMQP

    我正在读书RPC模型 http www rabbitmq com tutorials tutorial six java html在 AMQP 中使用 RabbitMQ 本教程创建了一个临时队列 并且还correlationId 临时队列是
  • Java中多余的import语句有什么影响?

    冗余java有什么影响import声明 它们会影响编译运行时 性能 大小 吗 或者只是诸如智能感知之类的东西 换个方式问 删除它们有多重要 导入语句仅影响编译期间发生的情况 编译器获取这段代码 并创建一个 class以可执行格式 二进制形式
  • 使用 Swift 3 进行 JSON 序列化

    我正在尝试通过从 JSON 数据填充数组来填充表 我正在使用下面的代码 但不断收到错误 类型 Any 没有下标成员 在以下代码行上 self tableData append jsonResult i title as String sel
  • UWP - 仅在设计器中应用的字体

    我的主 UWP 应用程序 Imp Dash 引用了一个类库 Imp Dash Cook 在所述类库的页面中 我有以下 XAML
  • codeigniter 活动记录嵌套查询

    我在将以下 MySQL 代码转换为 Codeigniter 活动记录查询时遇到问题 SELECT sss c country name c country code FROM SELECT gr FROM be goldrate as gr
  • 使用 Lodash 省略嵌套属性

    我正在尝试摆脱这些属性5MinuteRate and 15MinuteRate在以下对象中 var object requestsPerSecond mean 1710 2180279856818 count 10511 currentRa
  • javascript:修剪对象的所有属性[重复]

    这个问题在这里已经有答案了 有没有办法修剪对象的所有属性 换句话说 我可以改变这一点 a a b b c c To this a a b b c c 看来我无法映射对象 那么如何将函数应用于所有属性并取回对象 您可以使用Object key
  • 使用C计算目录中文件的数量

    如何在linux平台上使用C来统计目录中的文件数量 不保证此代码可以编译 而且它实际上只与 Linux 和 BSD 兼容 include
  • ContentSecurityPolicy 防止 Electron 中的获取请求

    我正在尝试构建一个发出 api 请求的电子应用程序 但是当我进行 api 调用时 出现以下错误 拒绝连接到 因为它违反了以下内容安全策略指令 default src self unsafe inline data 请注意 connect s
  • 核心数据:按关系属性排序

    我正在建立一个GitHub 上名为 AcaniChat 的 iPhone 原生消息应用程序的开源克隆 https github com acani AcaniChat 我有一个Conversation实体和一个Message实体具有sent
  • persistence.xml 不同事务类型属性

    在 persistence xml JPA 配置文件中 您可以有如下行