手记

Spring Data JPA: 更新字段采坑记

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

  • 当需要更改的字段比较多时,可以将需要更改的字段封装在实体类当中,然后不需要更改的字段通过findone找到对应数据也封装到此实体类当中,然后调用saveandflush方法进行update。如果不将不需要更改的字段封装到实体类中save的话,会将数据库中的对应字段置空。

  • 当需要更改的字段少时,例如仅仅对单个时间或者状态进行更新,可以在对应的repository添加update方法



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

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

缺少@Transactional,报错如下

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



作者:芥末无疆sss
链接:https://www.jianshu.com/p/85c334cca27d
來源:简书
简书著作权归作者所有,任何形式的转载都请联系作者获得授权并注明出处。


0人推荐
随时随地看视频
慕课网APP