gpt4 book ai didi

java - 实体上的观察者并不总是有效

转载 作者:行者123 更新时间:2023-11-29 08:37:01 25 4
gpt4 key购买 nike

我有一个 spring boot 和 spring 数据设置 (@Data)。当一个实体的属性更改时,我需要执行一些操作。我正在尝试使用观察者模式,所以当我们从代码中调用该属性的 setter 时,我在其中添加了 stateChanged。您认为这会按预期工作,还是 spring 在幕后调用 setter ?

最佳答案

Spring绝对不是时不时调用这些setter。

要在实体更新保存在数据库中之前立即执行您的自定义代码,您可以在实体类中的方法上使用@PreUpdate 注释,或者您可以使用此方法拥有更高级别的抽象实体类,如果您的@ PreUpdate 代码相同。

@PreUpdate
public void onPreUpdate() {
//your custom code here
}

这样做您可以从您的 setter 中删除 stateChanged 调用。

关于java - 实体上的观察者并不总是有效,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43340161/

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