java - 更新jpa中的实体

标签 java spring spring-boot jpa

如何在不编写 sql 查询的情况下更新实体中的每个字段:

(update Entity u set u.m1= ?1, u.m2= ?2, ... where u.id = ?3)

类有20多个字段,如果我写sql查询这将需要很长时间。我经常添加新字段

我可以自动更新所有内容吗?像这样:

entityRepo.update(entity);

如果我entityRepo.save();在库中创建不必要的记录。

最佳答案

不,您可以使用JpaRepository.save(S实体)来保存更新实体(如果存在)。
为此,请确保在调用 save() 之前实体已为其 JPA @Id 赋值,否则确实会创建一条新记录。

关于java - 更新jpa中的实体,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56825240/

相关文章:

java - Android:并发后台作业的设计(Service、IntentService 还是 AsyncTask?)

java - Android HttpUrlConnection 结果字符串被截断

java - 如何为泛型对实现 equals?

java - eclipselink jpa 运算符详细信息

java - 使用 spring 处理请求/响应中的非表单字段的正确方法?

java - 如何在Spring MVC中使用@ModelAttributes和@SessionAttribute

java - Spring Boot 安全性 - 启动时创建 root 用户

Spring Cloud 流式传输并消费多个 kafka 主题

java - 使用 ObjectMapper 将 JSON 日期格式从 ZonedDateTime 序列化为自定义日期格式

Spring Boot 2.1.5 : Failed to replace {0} with Field Name on Validation Message