如何使用 Javers 通过自定义更新方法进行审计?

时间:2021-04-06 04:22:39

标签: spring spring-boot spring-data-jpa spring-data javers

我想使用 Javers 来审核 save() 和 delete() 以外的查询。

这是我的仓库:

@Repository
@JaversSpringDataAuditable
public interface SomeRepo extends JpaRepository<SomeEntity, Long> {

  @JaversAuditable
  @Modifying
  @Query("Update SomeEntity ent SET ent.name = :name where ent.somePK = :somePK")
  int update someEntity(@Param("name") String name, @Param("somePK") Long somePK);

}

如果我使用这种方法保存,我得到的错误是

<块引用>

不支持提交顶级 ValueType,如“String”。您只能提交实体或 ValueObject 实例

我看到它完成的方式是使用 someRepo.getOne(somePK) 并在使用 someEntity.setName("") 修改后使用 someRepo.save(someEntity);

有更好的方法吗?有什么方法可以在不更改代码的情况下做到这一点?

0 个答案:

没有答案