获取 JPA 本机插入查询生成的标识符

2024-04-17

出于性能原因,我需要使用一些本机查询将新对象插入数据库。我有一个非常复杂的 JPA 持久层,它管理我通常的实体读写,我想使用这个持久层来运行本机查询。

我知道我需要方法 EntityManager#createNativeQuery(String) 和 Query#executeUpdate 来实现我的目标。

我当前的问题是我还想获取新插入行的生成标识符。我知道使用 JDBC 或 SpringPersistence 是可能的,但是有什么方法可以从 JPA 本机查询中获取这些标识符吗?


大多数情况下,这是特定于数据库的,如果您可以使用 JDBC 来完成此操作,您也可以使用 JPA 本机查询来完成此操作。您基本上需要执行(特定于数据库的)额外查询来获取插入的 ID。

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

获取 JPA 本机插入查询生成的标识符 的相关文章

  • 在Maven中生成Version.java文件

    我有一个使用 Ant 脚本构建的 Java 项目 我正在尝试将项目转换为 Maven 其中一项任务生成一个名为 Version java 的 Java 源文件 其中包含编译时间戳的静态字符串表示形式 如下所示 package com foo
  • Java将字符串解析为double

    如何解析字符串中的这个 Double 00034800 变成 Double 值 最后两位数字实际上是小数点 所以我正在寻找的结果是348 00 是否有这样的格式可以与十进制格式一起使用 Well String s 00034800 doub
  • “源兼容性”和“目标兼容性”有什么区别?

    之间有什么关系 区别sourceCompatibility and targetCompatibility 当它们设置为不同的值时会发生什么 根据工具链和兼容性 https docs gradle org current userguide
  • 在Windows Server 2003下如何在本地系统帐户下运行jvisualvm.exe?

    我在带有 Java 1 6 u 20 的 Windows Server 2003 下将 GlassFish 3 0 1 作为 Windows 服务运行 总体上我很满意 我希望能够在这个 JVM 上使用 VisualVM 并使用无法在 Tom
  • 连接外部 Accumulo 实例和 java

    我正在尝试使用 Accumulo 连接到虚拟机 问题是 我无法将其连接到 Java 中 我可以看到 Apache 抛出的网页 但我无法让它与代码一起工作 我认为这是缺乏知识的问题而不是真正的问题 但我找不到这方面的文档 所有示例都使用 lo
  • 为什么在 10 个 Java 线程中递增一个数字不会得到 10 的值?

    我不明白 a 的值为0 为什么 a 不是10 那段代码的运行过程是怎样的 是否需要从Java内存模型来分析 这是我的测试代码 package com study concurrent demo import lombok extern sl
  • 以相反的顺序打印任何集合中的项目?

    我在 使用 Java 进行数据结构和问题解决 一书中遇到以下问题 编写一个例程 使用 Collections API 以相反的顺序打印任何 Collection 中的项目 不要使用 ListIterator 我不会把它放在这里 因为我想让有
  • Java LostFocus 和 InputVerifier,按反向制表符顺序移动

    我有一个 GUI 应用程序 它使用 InputVerifier 在产生焦点之前检查文本字段的内容 这都是很正常的 然而 昨天发现了一个问题 这似乎是一个错误 但我在任何地方都找不到任何提及它的地方 在我将其报告为错误之前 我想我应该问 我在
  • 查看Java Agent修改的Java类的源代码

    我需要了解 Java 代理如何修改我的初始类 以便我能够理解代码的作用 build gradle configurations jar archiveName agent2 jar jar manifest attributes Prema
  • java中如何知道一条sql语句是否执行了?

    我想知道这个删除语句是否真的删除了一些东西 下面的代码总是执行 else 是否删除了某些内容 执行此操作的正确方法是什么 public Deleter String pname String pword try PreparedStatem
  • ThreeTen 向后移植与 JSR-310 的比较

    由于某些原因 我们现在无法使用 java 8 我们仍然停留在 java 7 上 不过 我想使用新的JSR 310 date time APIs现在 使用官方向后移植 ThreeTen http www threeten org threet
  • 在java程序中使用c++ Dll

    我正在尝试使用System LoadLibrary 使用我用 C 编写的一个简单的 dll UseDllInJava java import com sun jna Library import com sun jna Native imp
  • 如何使用 Jersey 将嵌套列表封送为 JSON?我得到一个空数组或一个包含数组的单元素字典数组

    我正在开发一个使用 Jersey 将对象转换为 JSON 的项目 我希望能够写出嵌套列表 如下所示 data one two three a b c 我想要转换的对象首先将数据表示为 gt gt 我认为 Jersey 会做正确的事情 以上输
  • Lombok 不适用于 Eclipse Neon

    我下载了lombok jar lombok 1 16 14 jar 并将其放入我的下载中 然后我点击这个 jar 执行正确地识别了我的 MacOS 上的 Eclipse 实例 然后我选择了我想要的实例 Lombok也在pom xml中指定
  • 我所有的 java 应用程序现在都会抛出 java.awt.headlessException

    所以几天前我有几个工作Java应用程序使用Swing图书馆 JFrame尤其 他们都工作得很好 现在他们都抛出了这个异常 java awt headlessexception 我不知道是什么改变了也许我的Java版本不小心更新了 谢谢你尽你
  • 在 Java 中通过 D-Bus MPRIS 访问 Clementine 实例

    我使用 Clementine 作为音乐播放器 它可以通过 D Bus 命令进行控制 在命令行上 使用 qdbus 我可以 Start Stop 暂停播放器 强制它跳过播放列表中的歌曲 检查播放列表的长度 检查播放列表中当前播放的曲目及其元数
  • 什么是 Java2D 处理程序线程?

    我创建了一个使用 Hibernate 的示例 java 应用程序 当我进行线程转储时 我观察到一个名为 Java2D Disposer 的奇怪线程 有人能告诉我该线程的功能吗 AWT 系统中的某些实体需要最终确定以释放资源 最突出的例子是j
  • 如何让 Firebase 与 Java 后端配合使用

    首先 如果这个问题过于抽象或不适合本网站 我想表示歉意 我真的不知道还能去哪里问 目前我已经在 iOS 和 Android 上开发了应用程序 他们将所有状态保存在 Firebase 中 因此所有内容都会立即保存到 Firebase 实时数据
  • 在会话即将到期之前调用方法

    我的网络应用程序有登录的用户 有一个超时 在会话过期之前 我想执行一个方法来清理一些锁 我已经实现了sessionListener但一旦我到达public void sessionDestroyed HttpSessionEvent eve
  • 关闭扫描仪是否会影响性能

    我正在解决一个竞争问题 在问题中 我正在使用扫描仪获取用户输入 这是 2 个代码段 一个关闭扫描器 一个不关闭扫描器 关闭扫描仪 import java util Scanner public class JImSelection publ

随机推荐

  • python os.fdopen(os.open()) 不能用于写入?

    这个问题与答案有关在Python中写入具有特定权限的文件 https stackoverflow com questions 5624359 write file with specific permissions in python用于打
  • 在gerrit中使用OpenID注册失败

    这些天我正在尝试设置 gerrit 但是当涉及到使用 OpenID 注册时 总是出现一个问题 提供商不受支持 或者输入错误 我在上面看到了同样的问题OpenID 与 Gerrit 不工作 https stackoverflow com qu
  • IntelliJ 中的 Gradle SourceSet 依赖项

    我有一个带有附加源集的 Gradle 项目 acceptance 这包含我的验收测试 而不仅仅是构建时单元和集成测试 我在标准中还有一些辅助类test我想分享的源集 但它不属于main源集 目前这在 Gradle 中运行良好 但 Intel
  • 用于与 TCP 套接字对话的 Cocoa-Touch 框架? [关闭]

    Closed 这个问题正在寻求书籍 工具 软件库等的推荐 不满足堆栈溢出指南 help closed questions 目前不接受答案 我有一个守护程序在锁定到 TCP IP 端口的服务器上运行 我正在寻找当前是否有任何支持 iPhone
  • php中如何去除标点符号

    除了这些字符之外 如何删除标点符号 这是一个巧妙的方法 preg replace punct target
  • 为多个页面编写一次 Twitter Bootstrap 导航栏

    我正在尝试开始使用 Twitter Bootstrap 3 我想让每个导航栏项目都转到新的 href 例如 我希望导航栏项目 关于 和 联系 链接到对应的about html and contact html pages 我发现的许多网站似
  • 输入时自动完成,使内容跳转

    我有一个输入 在 Chrome 中 当弹出自动完成菜单并且您将鼠标悬停在其中一个选项上时 输入下方的内容会跳转 就像自动完成选择由于某种原因添加垂直填充一样 我怎样才能阻止这个 这很烦人 这是一个例子 小提琴演示 https jsfiddl
  • 如何使用扩展功能保存分层图像

    我正在使用扩展函数将 uiview 保存为 uiimage 该代码用于保存 uiimage 然而 我想做的是在保存到照片库的图像上保存透明图像 所以我尝试使用扩展函数保存分层图像 现在只有 uiivew 被保存 第二层没有被保存 class
  • Web API 返回 csv 文件

    我需要从 Web API 控制器获取 csv 文件 我无法显示 另存为 对话框 页面上仅显示文本输出 我尝试了两者 从 jquery 调用 Export 以及普通的旧 html 控制器 System Web Http HttpGet pub
  • 溢出-y:滚动在 Firefox 中不起作用

    请参考网址 http jsfiddle net 8tFnG 1 http jsfiddle net 8tFnG 1 table border 1 cellspacing 0 cellpadding 1 width 100 table
  • 获取任何给定字符的宽度(以像素为单位)

    我有一个非常棒的想法 但无法找出 NET Framework 中是否有任何类 任何版本 最好是 3 5 或 4 0 允许您传入字符 并获取该字符的宽度 以像素为单位 无论使用哪种字体 字体大小或字体装饰 有人可以指出我正确的方向吗 像这样的
  • 使用JS显示计算结果的HTML输出

    我正在尝试使用 HTML 和 JS 构建一个卡路里计算器 目前正在努力在屏幕上 或通过 console log 显示输出 我知道我正在做一些非常基本的错误 但目前无法确定那是什么 下面是我的 HTML 和 JS 代码 document ge
  • 连接表的最佳 SQL 索引

    考虑到性能改进 我想知道哪些索引对连接表 特别是在 Rails 3 has and belongs to many 上下文中使用 是否有帮助以及哪些索引有帮助 模型和表格设置 我的模型是Foo and Bar根据 Rails 约定 我有一个
  • 未修改的 iOS7 Apple GLPaint 示例混合问题

    在苹果的GLPaint https developer apple com library ios samplecode GLPaint Introduction Intro html例如 用户可以使用半透明画笔在表面上绘图并改变颜色 然而
  • 我可以在 VSCode IDE 上设置要使用的打字稿配置“tsconfig.json”路径吗?

    我有一个如下的项目结构 my app configs tsconfig json webpack merge ts webpack dev config ts webpack prod config ts node modules src
  • 在休眠启动时删除所有表

    出于开发目的 如何配置 hibernate 在运行之前删除所有表 我不想在运行代码之前不断手动删除所有表 我已经在使用了
  • Angular ng 消息在 ng 重复表单上显示错误

    我想用 ng Repeat 生成输入 问题是当我遇到错误时 这仅适用于最后一个元素 我怎样才能使其适用于每个元素
  • 如何从 ASP.NET MVC 中的控制器构造函数查找文件夹的路径?

    我试图获取网站根目录中文件夹的路径 并在调用控制器构造函数时将其保存到类属性中 public TestController Controller string temp public TestController temp 我已经尝试过以下
  • SQL 实现层次关系

    我有一个表 其中产品根据层次关系 如树结构 进行分类 我必须选择一个类别以及任何级别的所有子类别 见下图 例如我想要一个sql语句 当我查询传递id 11时 它返回我 19 20 21 22 23 24 25 26 在 MySQL 中存储分
  • 获取 JPA 本机插入查询生成的标识符

    出于性能原因 我需要使用一些本机查询将新对象插入数据库 我有一个非常复杂的 JPA 持久层 它管理我通常的实体读写 我想使用这个持久层来运行本机查询 我知道我需要方法 EntityManager createNativeQuery Stri