jpa - 更新 JPA 实体中的一个字段

标签 jpa

我有一个实体 User在函数中分配了系统权限。我有一个网页,您可以在其中从下拉列表中选择一个用户并将表单提交到服务器。在服务器端,我只想更新该实体的一个字段。

我的用户实体将具有所有对象的默认值,但设置的一个字段及其 id 除外。我需要做一个 findById然后更新特定字段然后进行合并还是有办法告诉只更新该字段?

最佳答案

Do I need to do a findById then update the specific field then do the merge



这将是常规方法,除了您不需要合并托管实体,只需让 JPA 检测更改并自动更新即可。

or is there a way to tell the to only update that field?



不。但是您可以使用 User 的“简短”版本。 (只有要更新的字段)。另一种选择是使用 批量更新操作 但这在 IMO 真的不是一个好的用例。我不会使用这种方法。

引用
  • JPA 1.0 规范
  • 4.10 批量更新和删除操作
  • 关于jpa - 更新 JPA 实体中的一个字段,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3476613/

    相关文章:

    java - 存在子查询的 JPA 规范使 SQL Server 语法失败

    mysql - Spring boot jpa H2兼容模式MYSQL不工作

    java - NativeQuery Spring Data 返回对象

    java - 具有对特定子类的继承限制的 JPA OneToMany 集合

    jakarta-ee - 内部字段出现 OptimisticLockingException

    java - JPA Java 持久性 API 查询返回零结果

    java - JPA QueryDSL 存在并计数

    java - 为什么使用 @Transient 会出现 "org.hibernate.MappingException: In trying to locate getter for property, Class defined both a get and is variant"错误?

    javax.persistence.PersistenceException : org. hibernate.PersistentObjectException: 错误

    java - Spring JPA添加自定义方法