2

我正在尝试实现一些功能,如果我的一个模型类上的某个属性发生更改,则执行一些额外的逻辑。我认为覆盖模型类中的保存和更新方法是可行的方法,但是如何检查属性是否已更改?我看到 Ebean 有 BeanPersistListener 但这似乎对于我在这里需要的东西来说可能有点过头了。

public class Test extends Model {
    public String foo;
    public String bar;

    @Override
    public void save() {
        //if foo has been modified do something extra
        super.save();
    }

    //same thing for update()

}
4

1 回答 1

0

我已经解决了这个问题:

boolean isDirty = EbeanServer.getDefaultServer()
                             .getBeanState(yourObject)
                             .isNewOrDirty();
于 2018-11-27T15:33:42.610 回答