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 {}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();
  }
}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