Giriş
Envers kullanmak için iki tane anotasyonu belirmek lazım
Envers kullanmak için iki tane anotasyonu belirmek lazım
1. @EnableJpaAuditing
2. @EnableJpaRepositories
3. @Audited
Daha detaylı bilgi için Envers Kullanımı yazısına bakabilirsiniz
Bu anotasyonları ayrı bir @Configuration sınıfına taşımak daha iyi. Şöyle yaparız.
Eğer kullanıcı ismini dönen bean'i kendimiz kodlamak istersek bu alanda bu bean'i belirtmek gerekir.
@Configuration
@EnableJpaAuditing
@EnableJpaRepositories(repositoryFactoryBeanClass =
EnversRevisionRepositoryFactoryBean.class)
public class JpaEnversConfiguration {}
auditorAwareRef AlanıEğer kullanıcı ismini dönen bean'i kendimiz kodlamak istersek bu alanda bu bean'i belirtmek gerekir.
Örnek
Şöyle yaparız.
Şöyle yaparız.
@Configuration
@EnableJpaAuditing(auditorAwareRef = "auditorAware")
@EnableAspectJAutoProxy(proxyTargetClass = true)
@EnableTransactionManagement
public class PersistenceContext {
@Bean
public AuditorAware<AccountModel> auditorAware() {
return new AuditorAwareImpl();
}
}
Bean için şöyle yaparız.public class AuditorAwareImpl implements AuditorAware<AccountModel> {
@Override
public Optional<AccountModel> getCurrentAuditor() {
return Optional.ofNullable((AccountModel)
SecurityContextHolder.getContext().getAuthentication().getPrincipal());
}
}
Hiç yorum yok:
Yorum Gönder