有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

java在保存过程中检查Play Framework模型中更改的属性

我试图实现一些功能,如果某个模型类上的某个属性发生更改,则执行一些附加逻辑。我认为重写模型类中的save和update方法是可行的,但是如何检查属性是否已更改?我看到Eben有一个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) 个答案

  1. # 1 楼答案

    我的解决办法如下:

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