백엔드 공부하기/TIL

231017 TIL : [Spring-boot] 개발자 키우기 프로젝트 : 날짜 자동으로 테이블에 값 넣는 방법. (JPA)

개발중인 감자 2023. 10. 18. 00:57

📌 231017 TIL : [Spring-boot] 개발자 키우기 프로젝트 

: 날짜 자동으로 테이블에 값 넣는 방법. (JPA)


 

1. 일단 Entity 클래스에서 LocalDateTime으로 선언한 날짜 관련 필드에 적절한 어노테이션을 붙여준다. 

@CreateDate : 인스턴스가 생성된 시간의 정보를 자동으로 저장.

@LastModifiedDate : 인스턴스가 마지막에 수정된 정보를 저장. 

@CreatedDate //생성된 시간의 정보를 자동으로 저장해줌. 
private LocalDateTime createdAt;

@LastModifiedDate //수정된 시간의 정보를 자동으로 저장해줌. 
private LocalDateTime updateAt;

 

2. Entity 클래스에 @EntityListeners 어노테이션을 붙여준다. 

@EntityListeners: 엔티티를 DB에 적용하기 이전, 이후에 콜백 리스너를 요청할 수 있는 어노테이션
@Entity
@EntityListeners(AuditingEntityListener.class) //이게 있어야 @CreateDate 됨.
public class Developer {

    @CreatedDate
    private LocalDateTime createdAt;

    @LastModifiedDate
    private LocalDateTime updateAt;
}

 

3. 구동하는 메인 어플리케이션? 에 @EnableJpaAuditing 어노테이션을 붙여준다. 

@EnableJpaAuditing
@SpringBootApplication
public class GrowupDeveloperApplication {

    public static void main(String[] args) {
        SpringApplication.run(GrowupDeveloperApplication.class, args);
    }

}

 

별도의 작업 없이도 시간이 잘 들어갔음을 알 수 있다.