사내 프로젝트 진행 중 timezone 관련하여 정리 중 그 동안 놓치고 있었던 부분을 설명 하고자 한다.
프로젝트 구성
- BackEnd : Spring
- DBMS : mysql
- FrontEnd : React Native
발견된 문제
설정된 timezone(시간대)에 따른 날짜 출력 시 불필요한 timezone 변환 과정이 필요했음.
- 변경 전 : String 유형의 날짜 -> 한국시간대의 날짜(변환) -> 설정된 timezone 날짜(변환)
- 원하는 방향 : 한국시간대의 날짜 -> 설정된 timezone 날짜(변환)
- 문제점 : BackEnd DTO 날짜 타입이 String 이었음
- 변경 후 : String -> Date 변경
// before
private String nowDate;
// after
private Date nowDate;
정리
- FrontEnd 에서 날짜 관련 변환을 하려고 한다면 DTO 작성 시 Date 유형으로 선언해야 한다.