spring data jpaデータ変更監査
1677 ワード
まぜん javers
org.springframework.boot
spring-boot-starter-data-jpa
org.javers
javers-spring-boot-starter-sql
3.1.0
設定javers:
mappingStyle: FIELD
algorithm: LEVENSHTEIN_DISTANCE
prettyPrint: true
typeSafeValues: false
newObjectSnapshot: false
packagesToScan: com.xixicat.dao
auditableAspectEnabled: true
springDataAuditableRepositoryAspectEnabled: true
ダオ配置@JaversSpringDataAuditable
public interface PersonRepository extends CrudRepository {
}
メソッドの設定 @JaversAuditable
public void save(Person person) {
personRepository.save(person);
}
変更を表示 @Test
public void testChangeHistory(){
QueryBuilder jqlQuery = QueryBuilder.byInstanceId(2, Person.class);
List 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 snapshots = javers.findSnapshots(QueryBuilder.byInstanceId(1, Person.class).build());
System.out.println(snapshots);
}
doc