我有如下的类层次结构:
class Incident {// Id => Entity
@Id
String id
List<Participant> participants
List<RealEstateProperty> realEstateProperties
}
哪里
class Participant {// No id => by javers terms - ValueObject
EnclosedContact contact
}
class EnclosedContact {// No id => by ja
我有一个从其他实体扩展而来的实体,就像这样:
public class House extends Building{
public Integer idHouse
}
public class Building extends Structure{
}
public class Structure {
public Integer field1;
}
我需要审计房屋对象中的更改,但我不想包含Structure.field1字段。我试过这个:
String skippedFields = ["field1"];
EntityDefinition hous
我遇到了以下错误:我正在使用Spring 。
java.lang.IllegalStateException: Failed to execute CommandLineRunner
at org.springframework.boot.SpringApplication.callRunner(SpringApplication.java:816) [spring-boot-2.1.4.RELEASE.jar:2.1.4.RELEASE]
at org.springframework.boot.SpringApplication.callRunners(SpringAppli
我正在尝试为某些类实现CustomComparators。我的第一个问题是如何在我的CustomComparator中返回多个ValueChanges。当多个字段可能发生更改时,我似乎只能在该对象上返回单个ValueChange。此外,我不知道如何让Javers为在我的CustomCommparator覆盖的类中显示为字段的对象生成一个diff。示例如下:
我在下面定义了以下类,其中我们有一个拥有商店的人,该商店有他们在那里销售的商品。
public class Person
public Store store
public class Store
public String
当我真的很想比较两个对象时,我发现了一个名为Javer的库。这在大多数情况下都做得很好,例如比较对象中的值变化,并且对于列表也很有效。但是,如果有两个包含映射的对象,那么如何捕获更改呢?例如,我有一个有地图的下面的类,
public class Test {
private Map<String,Object> map = new HashMap();
//some others fields
//getters and setters
}
现在,如果我有具有以下值的对象:
Test test1 = new Test();
Map<String,Object
我有两个类似的java类: public class FooA {
private List<FooB> fooB;
}
public class FooB {
private Integer id;
private String name;
private double num;
} 我想比较一下FooA,它会告诉我list对象中的哪些字段发生了变化。但是当我这样做的时候: FooA old = new FooA(Arrays.asList(new FooB(1, "old", 1.0)));
FooA new = new FooA(Array
我创建了一个CustomPropertyComparator来使用它来比较JAXB创建的对象。因此,在我的例子中,我无法使用框架提供的@DiffIgnore注释。另外,JAXB生成的集合是基于java.util.List而不是java.util.Collection的。不幸的是,我无法让javers使用我的CustomPropertyComparator和List接口。
public class Person {
private String name;
private String ignoreThis;
}
public class Company {
p
我使用的是、Spring和Javer示例。对于干净的DB,当我第一次运行该项目,然后运行它时,当我第二次运行hibernate:ddl: create时,它会出现以下错误。
org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'jpaJaversApplication': Unsatisfied dependency expressed through field 'javers'; nested exception is
上下文
我已经为我的实体使用了@TypeName("Employee"),这样我就可以在DB中丢失完全合格的TypeName。它如预期的那样工作。
问题
当Spring应用程序重新启动,并且有现有的审计日志时,当我按下TYPE_NAME_NOT_FOUND时,我会得到javers.findSnapshots()异常
org.javers.common.exception.JaversException: TYPE_NAME_NOT_FOUND type name 'Employment' not found. If you are using @TypeName
我正在尝试跟踪文档中特定字段的更改。这是我的user类。我想跟踪使用Javers在计数上所做的任何更改。
@Document
public class User {
@Id
private String userId;
private String name;
private int count;
private Date creationDate = new Date();
private Map<String, String> userSettings = new HashMap<>();
}
我添加了以下代码,以便