maven
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-data-jpa</artifactId>
</dependency>
<dependency>
<groupId>org.javers</groupId>
<artifactId>javers-spring-boot-starter-sql</artifactId>
<version>3.1.0</version>
</dependency>
配置
javers:
mappingStyle: FIELD
algorithm: LEVENSHTEIN_DISTANCE
prettyPrint: true
typeSafeValues: false
newObjectSnapshot: false
packagesToScan: com.xixicat.dao
auditableAspectEnabled: true
springDataAuditableRepositoryAspectEnabled: true
dao配置
@JaversSpringDataAuditable
public interface PersonRepository extends CrudRepository<Person, Integer> {
}
方法配置
@JaversAuditable
public void save(Person person) {
personRepository.save(person);
}
查看变更
@Test
public void testChangeHistory(){
QueryBuilder jqlQuery = QueryBuilder.byInstanceId(2, Person.class);
List<Change> changes = javers.findChanges(jqlQuery.build());
System.out.println(changes);
changes.stream().forEach(e -> {
System.out.println(e.toString());
});
String changeLog = javers.processChangeList(changes, new SimpleTextChangeLog());
System.out.println(changeLog);
}
@Test
public void testSnapshotHistory(){
List<CdoSnapshot> snapshots = javers.findSnapshots(QueryBuilder.byInstanceId(1, Person.class).build());
System.out.println(snapshots);
}
doc
最后编辑于 :
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。