0

我是javers的新手。

我有两个具有属性的相同对象,我需要获取所有不同属性的列表。

这行得通

 Diff diff = javers.compare(memberFromDB, member);
 for (Change c : diff.getChanges()) {
        logger.info("change=" + c );
 }

并显示

change=ValueChange{globalId:'com.stuff.Member/', property:'currentRank', oldVal:'Friend12', newVal:'Dimaon'}

虽然我认为它很简单,但我如何访问 Change 的属性?

或者我应该以不同的方式迭代不同的差异?

我的最终目标是获取不同属性的列表。

谢谢

4

2 回答 2

0

不确定这是最好的方法,但它有效

Diff diff = javers.compare(memberFromDB, member);
ArrayList<ValueChange> diffs = (ArrayList)diff.getChangesByType(ValueChange.class);

for (ValueChange v : diffs ) {
     logger.info("change=" + v.getPropertyName() );
}
于 2017-09-21T03:02:14.497 回答
0
    diff.getChangesByType(PropertyChange.class).forEach(p ->
            logger.info("property change: "+ p.getPropertyName()  )
    );
于 2017-09-21T12:38:11.153 回答