为什么在JPA Hibernate中更新查询;所有属性都在 SQL 中更新

2023-12-21

我将 JPA 与 Hibernate 一起使用。当我修改对象的一个​​属性并更新它时;生成的 SQL 显示所有列都已更新!为什么它不只更新修改的列?有没有办法实现这一点,因为我觉得这样会更加优化。


默认情况下,hibernate 包含更新查询中的所有字段。如果你想排除这个或者使用自定义更新 HQL或者你可以配置休眠排除更新查询中未修改的字段如本文所述article http://www.mkyong.com/hibernate/hibernate-dynamic-update-attribute-example/.

这是通过添加来完成的dynamic-update="true"在你的类映射中。

<class ... table="your_table" .... dynamic-update="true">

在具有许多列(传统设计)或包含大量数据的大表中,这将对系统性能产生很大影响。如前所述,它可能会对性能产生一些影响here https://stackoverflow.com/a/3405560/507864。因此,在实现代码之前先测量代码的性能。

阅读APIhere http://docs.jboss.org/hibernate/orm/3.3/reference/en/html/mapping.html#mapping-declaration-class了解更多信息。

如果您使用注释,

@org.hibernate.annotations.Entity(selectBeforeUpdate=true)

它是 Hibernate 特定的注释,在 JPA 中不可用。这里有一个很好的article http://www.skill-guru.com/blog/2009/10/22/some-useful-options-in-class-element-in-hibernate/链接到详细信息。

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

为什么在JPA Hibernate中更新查询;所有属性都在 SQL 中更新 的相关文章

随机推荐

  • 回形针 - 保存文件后运行方法?

    我正在开发一个需要接受文件上传的项目 文件上传后 我正在进行一些处理 从文件中提取信息 我最终计划在后台工作程序中运行它 但它目前正在内联运行 我尝试使用 after create 和 after save 来处理文件 但似乎我的方法是在
  • 如何在 MATLAB 编辑器中启用自动单词完成功能?

    我可以通过按 Tab 在 MATLAB 命令提示符下使用自动单词完成功能 但在使用 m 文件的编辑器时无法执行此操作 有什么方法可以在编辑器中使用制表符补全吗 根据这篇 MathWorks 博客文章 http blogs mathworks
  • LinkedIn 分享按钮 - 无法识别 og:image

    我正在尝试与 og 标签共享页面 其中一个标签是 og image 如以下链接所述 https developer linkedin com documents setting display tags shares https devel
  • 在 vim 中打开与当前文件相同的文件夹中的文件

    在vim中 当我打开一个缓冲区时 我经常需要加载该文件所在目录中的另一个文件 但因为我通常不这样做cd进入其中 将pwd是父文件夹 所以我每次都必须重新输入路径 这有捷径吗 或者将密码更改为文件所在目录的方法 example cd src
  • 如何确定一个 3D 对象是否适合另一个 3D 对象(容器)?

    给定两个 3D 对象 我如何找到一个是否适合第二个对象 并找到该对象在容器中的位置 应平移和旋转对象以适合容器 但不得进行其他修改 其他并发症 相同的情况 但寻找最适合的解决方案 即使它不是正确的匹配 最小化不适合容器的物体的体积 支持弹性
  • Puppeteer:如何监听对象事件

    是否可以监听页内对象调度的事件 假设我访问的页面中有以下代码 var event new CustomEvent status detail ok window addEventListener status function e cons
  • 强制 git push + pull 超时

    我发现的所有问题都想避免 git 推 拉超时 就我而言 我想强迫他们 我的推 拉都是通过 ssh 传输到在某个时间点可能不可用的远程计算机 例如 我有一个脚本可以推送到两个远程公共存储库 我不希望这个脚本在推送到第一个存储库并且该机器不可用
  • Flexslider 和从右到左的语言支持

    我在 WordPress 上安装了一个包含 Flexslider 的模板 我的语言是从右到左 RTL 书写的 当页面为 RTL 时 Flexslider 停止并且不显示图像 我该如何解决这个问题 Flex 滑块不支持 RTL 语言 解决这个
  • C++:崩溃时不显示 glibc 的回溯和内存映射

    我正在使用 Python 进行自动 C 代码测试 所以我有一个编译和执行 C 代码的 Python 脚本 当 C 代码崩溃时 即使我重定向 libc 输出也可以从我的 Python 脚本输出中看到cout and cerr正在执行的 C 程
  • 从数据库更新模型时出现实体框架错误,反之亦然

    当我尝试使用 VS Express 2013 for web EF6 1 1 和 NET Framework 4 5 从数据库更新模型时 会发生以下情况 在本例中 我只是在表定义中向表中添加了一个字段并更新了数据库 之后 我在 EDMX 模
  • 使用GridSearchCV时出现值错误

    我正在使用 GridSearchCV 进行分类 我的代码是 parameter grid SVM dual True False loss squared hinge hinge penalty l1 l2 clf GridSearchCV
  • Autofac PropertiesAutowired - 是否可以忽略一个或多个属性?

    尽管建议通过构造函数传递依赖项 但我发现使用无参数构造函数然后自动装配所有属性的开发成本显着减少 并使应用程序更易于开发和维护 然而有时 例如在视图模型上 我有一个在容器中注册的属性 但我不想在构造时填充该属性 例如绑定到容器的所选项目 有
  • 谷歌移动视觉库无法下载

    我正在尝试将 Google Mobile Vision TextRecogniser API 实现到我的应用程序中 以读取给定图像中的文本 当我尝试使用该功能时 出现以下错误 W DynamiteModule Local module de
  • 为什么 Julia 不鼓励对 UTF8 字符串建立索引?

    Julia 的入门指南 在 Y 分钟内学习 Julia https learnxinyminutes com docs julia 阻止用户索引 UTF8 字符串 Some strings can be indexed like an ar
  • 如何调整表单大小以自动适应其内容?

    我正在尝试实现以下行为 表单上有一个选项卡控件 在该选项卡控件上有一个树视图 为了防止出现滚动条 我希望表单在第一次显示时根据树视图的内容更改其大小 如果树视图有太多节点无法在窗体的默认大小上显示 则窗体应更改其大小 以便树视图上没有垂直滚
  • 无法在列表框中绑定命令

    我的 WPF 使用 MVVM 方法 我正在尝试在列表控件中绑定 2 个控件
  • 我自己的 R 中的 K 均值算法

    我是 R 编程的初学者 我正在 R 中进行此练习作为编程入门 我已经在 R 中实现了自己的 K 均值实现 但在某一点上卡住了一段时间 我需要达成共识 算法迭代直到找到每个簇的最佳中心 这是没有迭代的原始算法 它只是从整个数据中随机选取一个数
  • 在ColdFusion中,有没有办法确定代码在哪个服务器上运行?

    ColdFusion 代码中是否有任何方法可以确定代码在哪个服务器上执行 我有一些负载平衡的 ColdFusion 服务器 当我捕获异常时 我希望能够知道代码正在哪个服务器上运行 因此我可以将该信息包含在日志记录 报告代码中 服务器是 Wi
  • 当您无法提供色彩美感时手动创建图例

    在试图回答时这个问题 https stackoverflow com questions 34066131 can data points be labeled in stripcharts 34068263 创建所需绘图的一种方法是使用g
  • 为什么在JPA Hibernate中更新查询;所有属性都在 SQL 中更新

    我将 JPA 与 Hibernate 一起使用 当我修改对象的一个 属性并更新它时 生成的 SQL 显示所有列都已更新 为什么它不只更新修改的列 有没有办法实现这一点 因为我觉得这样会更加优化 默认情况下 hibernate 包含更新查询中