gpt4 book ai didi

java - 如何访问实体的先前状态?

转载 作者:搜寻专家 更新时间:2023-11-01 03:55:27 24 4
gpt4 key购买 nike

我正在尝试检测实体中的更改,以便检测对该实体所做的更改,以便我可以记录为任何用户所做的更改。

到目前为止,我已经设法使用:

@EntityListeners(AuditListener.class)
@Entity
public class Entity1{...}

和,

public class AuditListener {
@PostPersist
@PostUpdate
public void setUserInformation(Object entity) {...}
}

现在,我想要的是一种读取实体的Previous State 的方法,这样我就可以将它与当前值进行比较,并将字段、新值写入审计表以及执行修改的用户。

我知道我可以使用 @PostLoad 并在内存中保存以前的状态,但我认为必须有一种更通用的方法来完成相同的操作(减少硬编码)。

提前致谢。

最佳答案

Roolback 不会将实体返回到更新前/持久化前的状态,它会恢复对数据库的任何更改。我认为持久性上下文中没有这样的对象。我认为你应该使用 aspect 。

关于java - 如何访问实体的先前状态?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8529444/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com