본문 바로가기
반응형

envers2

히스토리 관리 - 데이터 변경 감지 📌 데이터 변경 감지 방식 비교 정리🎯 목적API를 통한 CRUD 변경 이력 확인운영 관점에서 데이터 변경 추적bulk update 포함 여부 고려MSA 구조 + MySQL 환경1️⃣ Hibernate Event Listener✅ 개념Hibernate 내부 이벤트(PostInsert, PostUpdate, PostDelete 등)를 가로채서엔티티 변경 시점에 원하는 로직을 실행하는 방식.“엔티티 변경 시점에 개입하는 구조”✅ 특징Hibernate 레벨에서 동작Dirty Checking 기반변경 전/후 값 접근 가능JSON 등 자유로운 포맷 저장 가능특정 엔티티만 선택 적용 가능Kafka 발행 등 확장 가능테이블 자동 생성 없음 (직접 설계)❗ 한계JPQL bulk update 감지 불가native q.. 2026. 2. 25.
Envers / spring-data-envers 개요 Envers 모듈은 Hibernate 및 JPA와 함께 작동하는 핵심 Hibernate 모델입니다. Envers 모듈은 엔티티 클래스를위한 쉬운 감사 / 버전 관리 솔루션을 제공하는 것을 목표로합니다. 하이버네이트 핵심 모듈 JPA 스펙에 정의된 모든 매핑 감사 엔티티의 변경 이력을 자동 관리 트랜잭션 단위의 통합 Revision 관리 (Snapshot) REVINFO 테이블은 revision_id 와 Timestamp만 가지고 있고, 이력 테이블은 별도로 존재함. 한 트랜잭션 내에서 발생한 변경사항을 revision_id 1이라는 이력으로 여러 이력테이블에 각각 저장, revision_id 1인 항목의 해당 트랜잭션에서 변경된 모든 이력을 감사(audit)가능함 의존성 implementation(.. 2021. 8. 3.
반응형