코드스테이츠/스프링

[Spring Data JPA] JPA Auditing 기능

서하빈 2023. 6. 22. 16:49

JPA Auditing이란?

- Java에서 ORM 기술인 JPA를 사용하여 도메인을 관계형 데이터베이스 테이블에 매핑할 때 공통되는 필드나 컬럼이 존재한다.

- 대표적으로 생성일자, 수정일자, 식별자 등

- Audit는 감시하다 라는 뜻으로 Spring Data JPA에서 시간에 대해 자동으로 값을 넣어주는 기능이다.

 

 

Audit 사용 예제 코드

- @MappedSuperclass 는 JPA Entity 클래스들이 해당 추상 클래스를 상속할 경우 createdAt, modifiedAt을 컬럼으로 인식하게 하는 역할을 한다.

- @EntityListeners(AuditingEntityListener.class)는 해당 클래스에 Auditing 기능을 포함한다는 의미이다.

- @CreatedDate는 Entity가 생성되어 저장될 때 시간이 자동으로 저장된다.

- @LastModifiedDate는 조회한 Entity의 값을 변경할 때 시간이 자동으로 저장된다.

 

 

JPA Auditing 활성화