반응형
데이터베이스를 사용할 때 등록일, 수정일을 기록하는 경우가 아주 많습니다.
이력 관리 차원에서 아주 중요합니다.
JPA에서 엔티티를 등록, 수정할 때 아래와 같이 날짜를 수정하는 코드가 많이 들어갑니다.
Book book = new Book();
book.setTitle("Eclipse");
book.setCreateDate(LocalDateTime.now());
그런데 매번 이것을 입력하기는 너무 번거롭습니다. 등록할 때는 등록일을 입력해야 하고, 수정할 때는 수정일을 입력해야 합니다. 이렇게 구분해서 입력해야 하고, 사람이 하는 일이다 보니 실수할 수도 있는 것이죠
이 문제를 해결할 수 있는 것이 JPA Auditing입니다.
- 먼저, JPA Auditing 어노테이션을 활성화 할 수 있도록 Application 클래스에 활성화 어노테이션을 추가합니다.
@EnableJpaAuditing @SpringBootApplication public class Application { public static void main(String[] args) { SpringApplication.run(CaffeineApplication.class, args); } }
- Entity에 Auditing을 적용합니다.
@Getter @Setter @EntityListeners(AuditingEntityListener.class) public class Book { private String title; private String subTitle; @CreatedDate private LocalDateTime createDate; @LastModifiedDate private LocalDateTime lastUpdatedDate; }
이로써 앞으로 jpa에서 데이터를 등록, 수정할 때 등록일, 수정일을 신경 쓰지 않아도 됩니다.
728x90
반응형
'웹 개발' 카테고리의 다른 글
IE(Internet Explorer)에서 호환성보기를 사용하지 않게 하는 방법 (0) | 2021.09.23 |
---|---|
Spring Boot SQL 보기 옵션 총 정리 (0) | 2021.08.08 |
Jackson Convert Object to Map preserving Date type (0) | 2021.08.07 |
Get the Current Working Directory in Java (0) | 2021.08.01 |
Copying a HashMap (0) | 2021.07.31 |