在保存期间检查Play Framework Model中的已更改属性

时间:2013-06-03 14:19:52

标签: java playframework-2.0 ebean

我正在尝试实现一些功能,如果我的某个模型类上的某个属性发生更改,则执行一些额外的逻辑。我认为覆盖模型类中的保存和更新方法是可行的方法,但是如何检查属性是否已更改?我看到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()

}

1 个答案:

答案 0 :(得分:0)

我已经解决了以下问题:

boolean isDirty = EbeanServer.getDefaultServer()
                             .getBeanState(yourObject)
                             .isNewOrDirty();