簡體   English   中英

即使 JPA 實體不臟,我是否可以強制 spring-data 更新可審計字段?

[英]Can I force spring-data to update auditable fields even if JPA entity not dirty?

我正在使用 Spring-data-jpa 進行審計。 我本質上想“觸摸”我的實體 - 我想更新 @LastModifiedDate 和 @LastModifiedBy 字段,即使我沒有對對象進行任何更改。

本質上,我希望將這兩個字段改為“LastAccessedBy”和“LastAccessedDate”。

即使實體不臟,有沒有辦法觸發 Spring 數據/JPA 將實體寫入數據庫(從而觸發 Spring 數據審計模塊)?

還是我唯一的選擇是修改審計字段(例如:@LastModifiedDate),然后讓 spring 用更新的值覆蓋它?

對於它的價值,當我希望更新此列時,即使我知道我的實體不臟,我也會自己設置lastModifiedDate

entity.setLastModifiedDate(Instant.now());

該值將被@LastModifiedDate注釋覆蓋,但至少我會得到我想要的。

我的情況是:我有一個表來跟蹤我的文件系統上的文件,有一些功能規則要處理,如果用戶上傳一個與前一個同名的文件,如果我沒有手動設置lastModifiedDate我可以不告訴實際上次上傳日期是什么。

(我知道我應該使用新的 md5 文件來設置我的實體臟,但這會讓我的經理害怕太多)

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM