Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/spring/14.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 即使JPA实体不脏,我是否可以强制spring数据更新可审核字段?_Java_Spring_Jpa_Spring Data_Auditing - Fatal编程技术网

Java 即使JPA实体不脏,我是否可以强制spring数据更新可审核字段?

Java 即使JPA实体不脏,我是否可以强制spring数据更新可审核字段?,java,spring,jpa,spring-data,auditing,Java,Spring,Jpa,Spring Data,Auditing,我将Spring数据jpa用于审计。我基本上想要“触摸”我的实体——我想要更新@LastModifiedDate和@LastModifiedBy字段,即使我没有对对象进行任何更改 本质上,我希望将这两个字段改为“LastAccessedBy”和“LastAccessedDate” 是否有一种方法可以触发Spring data/JPA将实体写入DB(从而触发Spring数据审核模块),即使实体不是脏的 或者,我唯一的选择是修改审核字段(例如:@LastModifiedDate),然后让spring

我将Spring数据jpa用于审计。我基本上想要“触摸”我的实体——我想要更新@LastModifiedDate和@LastModifiedBy字段,即使我没有对对象进行任何更改

本质上,我希望将这两个字段改为“LastAccessedBy”和“LastAccessedDate”

是否有一种方法可以触发Spring data/JPA将实体写入DB(从而触发Spring数据审核模块),即使实体不是脏的


或者,我唯一的选择是修改审核字段(例如:@LastModifiedDate),然后让spring用更新的值覆盖它?

行不会更新这些值吗?@WeareBorg不应该;如果是这样的话,我会认为这是一个错误。审核字段只应在对象被持久化时更新。如果对象没有被持久化(因为它不是脏的),字段就不会被更新。哦,我以为你只是想更新字段而没有这个问题。。我能想到的是,要么直接更新字段,要么在获取对象后触发。我希望一些用户可能更清楚。祝你好运。字段和注释有不同的用途,不要将其用于其他用途,因为这只会让人困惑。如果您想要
LastAccessedBy
等,那么就为这种情况创建注释/字段,但不要滥用不适合它的内容。改变行为的问题是,您首先需要修改Spring数据源。然后,这对我来说是一个主要问题,每一个其他的开发人员在查看您的代码时,看到这些注释,都会期望某种不再存在的行为。所以马丁是对的…:-)