Spring Data JPA: 更新字段采坑记

JPA进行数据库数据的更新,现在总结有以下思路:

  • 当需要更改的字段比较多时,可以将需要更改的字段封装在实体类当中,然后不需要更改的字段通过findone找到对应数据也封装到此实体类当中,然后调用saveandflush方法进行update。如果不将不需要更改的字段封装到实体类中save的话,会将数据库中的对应字段置空。
  • 当需要更改的字段少时,例如仅仅对单个时间或者状态进行更新,可以在对应的repository添加update方法


    Spring Data JPA: 更新字段采坑记_第1张图片

    三个注解缺一不可!!!
    缺少@Modifying.报错如下!

org.hibernate.hql.internal.QueryExecutionRequestException: Not supported for DML

缺少@Transactional,报错如下

nested exception is javax.persistence.TransactionRequiredException: Executing an update/delete query

你可能感兴趣的:(Spring Data JPA: 更新字段采坑记)