Postman - Json 작성
{
"sendDate" : "2023-01-18T11:22:33"
}
받을 DTO의 변수에 다음과 같이 셋팅하기
public class TransferInfoDto {
//@JsonDeserialize(using = LocalDateDeserializer.class)
//@JsonFormat(shape = JsonFormat.Shape.STRING, pattern = "yyyy-MM-dd'T'hh:mm:ss", timezone = "Asia/Seoul")
@DateTimeFormat(pattern = "yyyy-MM-dd'T'HH:mm:ss")
private LocalDateTime sendDate;
}
(...주석은 많은 방법을 시도한 흔적...무시하세요!)
@DateTimeFormat : Spring에서 지원하는 어노테이션으로 'LocalDate'와 'LocalDateTime'과 같은
날짜 관련 타입의 직렬화를 지원하는 어노테이션입니다.
pattern 중간에 'T'를 넣는 이유는
띄어쓰기를 사용하면 값이 안넘어가거나 잘못넘어갈수도 있기 때문입니다.
pattern에서 T를 그대로 사용할 수 없어 ' '로 감싸서 표현합니다.
성공!!
(Post로 보내는 Request Body(json객체))
Response(서버→클라이언트) : @JsonFormat 사용.
Request(클라이언트→서버) : @DateTimeFormat 사용.
Post - Request Body 요청시 @DateTimeFormat과 @JsonFormat 둘다 사용이 가능하다고 하는데
저는 @DateTimeFormat만 되네요..
끝!!
'Spring & Spring Boot' 카테고리의 다른 글
[Spring&Spring Boot] @Transaction, rollback이 안될 때가 있다?? (0) | 2023.03.28 |
---|---|
[SpringBoot] 엑셀 값 가져오기(.xls & .xlsx) (0) | 2023.03.06 |
[Swagger] DTO에서 parameter 숨기기 (0) | 2023.01.16 |
[Mybatis] Mybatis에서 inner class 사용법. (0) | 2023.01.05 |
[SpringBoot] 원시타입, 참조타입/Boolean boolean의 차이점 및 이슈 (0) | 2022.12.28 |