如何从Javers中的阴影元素获取版本

问题描述 投票:0回答:1

我正在尝试从Javers中的阴影获取版本。

当前正在通过这种方式。这是正确的实现吗,我认为这种方法会稍微影响性能。我在这里粘贴代码

    List<Shadow<Season>> shadows= javers.findShadows(QueryBuilder.byInstance(optionalSeason.get()).build());

    for (Shadow<Season> shadow : shadows) {
     List<CdoSnapshot> changes=javers.findSnapshots(QueryBuilder.byInstanceId(id,Season.class).withCommitId(shadow.getCommitId()).build());

     changes.get(0).getVersion()
                  }

如果有更好的方法,请让我知道,谢谢

java audit javers
1个回答
0
投票

好问题,由于您在Shadow类中缺少此信息,您似乎无法轻松获得它:

public class Shadow<T> {
    private final CommitMetadata commitMetadata;
    private final T it;

由于每个Shadow是从一个CdoSnapshot创建的,所以Shadow类可以轻松扩展到:

public class Shadow<T> {
    private final CdoSnapshot snapshot;
    private final T it;

如果需要,您可以将此更改贡献给Javers。

© www.soinside.com 2019 - 2024. All rights reserved.