웹개발/스프링부트
[문제해결]JPA를 이용한 생성시간 자동화 구현후 DB에 날짜가 null로 들어가는 문제
수제개발자
2019. 3. 22. 15:54
JPA Auditing으로 생성수정날짜 자동생성해서 DB에 입력하는 방법은 아래 포스팅을 참고
https://jojoldu.tistory.com/251?category=635883
위 포스팅대로 따라했는데 날짜가 null 들어가는 문제에 대한 하나의 해결방법이다.
현상:문제
딱히 에러는 나지 않지만 의도대로라면 날짜컬럼에 날짜가 들어가야하는데 null로 들어간다.
원인
현재시각을 따오는 클래스 BaseTimeEntity가 어노테이션 @EntityListeners(AuditingEntityListener.class)을 통해 JPA 청취를 하는데 main() 함수가 있는 클래스에서 JPA청취가능을 해주지 않았기 때문.
해결
메인함수가 있는 클래스에 @EnableJpaAuditing 어노테이션을 달아준다.
BaseTimeEntity.java
@Getter
@MappedSuperclass
@EntityListeners(AuditingEntityListener.class)
public class BaseTimeEntity {
@CreatedDate
private LocalDateTime createdDate;
@LastModifiedDate
private LocalDateTime modifiedDate;
}
Application.java
@EnableJpaAuditing
@SpringBootApplication
public class Application implements ApplicationListener{
public static void main(String[] args) {
SpringApplication.run(Application.class, args);
}