반응형
1. 문제 상황
- Spring Boot 프로젝트를 로컬에서 실행했을 때는 DB에 데이터를 삽입할 때, createdAt이 제대로 삽입됨
- 하지만 EC2로 배포 후 데이터를 삽입하면 한국 시간으로 들어가지 않고, 시간이 UTC로 들어가는 문제가 발생함 (한국 시간 -9)
2. 원인
- EC2 인스턴스 자체의 TimeZone을 바꿔봐도 해당 문제는 여전히 발생
- 프로젝트 자체의 TimeZone이 문제라고 생각함
3. 해결 방법
- 아래의 코드를 통해 프로젝트의 TimeZone을 서울로 맞춰주면 됨
- 이 코드는 프로젝트의 main 클래스나 @Component로 등록한 클래스 내부에 적어줘야 실행됨
- @PostConstruct는 프로젝트가 처음 실행될 때, 한 번만 실행 시켜주는 어노테이션
@PostConstruct
public void setTimeZone(){
TimeZone.setDefault(TimeZone.getTimeZone("Asia/Seoul"));
}
반응형
'Trouble Shooting' 카테고리의 다른 글
[RDS MySQL] Too many connections 해결 방법 (0) | 2023.05.03 |
---|---|
[Spring Boot] Jpa Delete 안될때 해결 방법 (CascadeType.REMOVE, OrphanRemoval, Soft Delete) (0) | 2023.01.15 |
[Spring Boot] Jpa로 MySQL 테이블 생성 안될때 해결 방법 (0) | 2023.01.14 |