DolphaGo / TIL

TIL & issues
0 stars 1 forks source link

[Spring] Controller TestCode 작성 시, OffsetDateTime이 왜 자꾸 long date 값으로 보이는 걸까? #35

Open DolphaGo opened 3 years ago

DolphaGo commented 3 years ago

분명히 API Call을 날려보면 OffsetDateTime 형태로 출력되는데, 막상 테스트 코드를 작성해보면 123981748.0 과 같이 date의 long값으로 출력되는 것을 경험할 것이다.

이는 TestCode에서 사용한 ObjectMapper에 약간의 설정을 추가해주면 해결된다.

즉, 다음과 같이 ObjectMapper를 테스트 코드에서 사용했다면

        objectMapper = new ObjectMapper();
        objectMapper.registerModule(new JavaTimeModule());

위와 같이 JavaTimeModule을 추가해주도록 한다.

이 비밀은 사실 Spring이 기본적으로 제공하는 Jackson의 ObjectMapper를 까보면 OffsetDateTime, LocalDateTime 관련하여 위와 같은 JavaTimeModule 추가하는 코드를 찾아낼 수 있다. image image