2012-10-20 2 views
0

MySQL 5.5에서 Spring 3.0 + JPA2 + Hibernate 4.1을 사용 중입니다. 감사 추적 목적으로 내 테이블에 5 개의 필드를 기록하려고합니다. - lastModifiedByUser, lastModifiedTime, createdByUser, createdTime , isActiveSpring + JPA + Hibernate 어플리케이션을위한 최상의 감사 추적 메커니즘

테이블에서 데이터를 삭제하지 않고 isActive false로 표시 만합니다.

테이블에 이러한 감사 필드를 기록하는 데 가장 유용한 도구는 무엇입니까? DB 트리거가 가장 좋은 아이디어가 아닌지, 특히 사용자 이름을 수정/생성 한 이후에 특별히 기록되어 있는지 궁금합니다.

답변

0

Envers를 확인하십시오. 이것만으로 만들어졌으며 Hibernate 4.x의 일부입니다. @Audited 어노테이션을 클래스에 추가하면 엔티티의 버전 관리가 자동으로 처리됩니다.

0

최근 도구는 확실하지 않지만 오래 전에 요격기를 사용하여 할 수있었습니다.

감사 열을 Entity 클래스에도 매핑 할 수 있습니다. 인터셉터를 정의하여 엔티티 객체를 데이터베이스에 유지하기 전에 엔티티 객체에 이러한 속성을 채 웁니다.

샘플 감사 인터셉터의 세부 정보는 최대 절전 모드에서 사용할 수 있습니다 (Hibernate Interceptors: Audit). 필요한 단계를 수행하기위한 단계를 따르십시오.

관련 문제