Search
Duplicate

@RequestParam Date 타입 받기

Spring boot에서 @RequestParam으로 Date(or LocalDate, LocalDateTime)을 받는 방법에 대해 몇가지 알아본다.

@DateTimeFormat - annotation

1. 속성
iso
RequestParam을 포맷하는데 사용할 ISO 패턴 enum 타입으로 정의되 있다.
enum ISO { /** * The most common ISO Date Format {@code yyyy-MM-dd}, * e.g. "2000-10-31". */ DATE, /** * The most common ISO Time Format {@code HH:mm:ss.SSSZ}, * e.g. "01:30:00.000-05:00". */ TIME, /** * The most common ISO DateTime Format {@code yyyy-MM-dd'T'HH:mm:ss.SSSZ}, * e.g. "2000-10-31T01:30:00.000-05:00". * <p>This is the default if no annotation value is specified. */ DATE_TIME, /** * Indicates that no ISO-based format pattern should be applied. */ NONE }
Java
복사
pattern
iso 형식으로 표시되지 않는 날짜 시간 패턴을 받고자 할 때 사용한다.
데이터 타입 사용자 정의 패턴으로 패턴은 엄격하게 지켜줘야 한다
Search
pattern example
pattern
detail
2020-06-23 18:03:32
2020-06-23-18:03:32+09:00
2. 사용법
@RequestParam의 전 후 아무곳에 @DateTimeFormat() annotation을 붙혀주면 된다.
@RequestParam("startDate") @DateTimeFormat(iso = ISO.DATE_TIME) LocalDate startDate @RequestParam("endDate") @DateTimeFormat(pattern = "yyyy-MM-dd") LocalDate startDate
Java
복사
3. 예제
public void testDateFormat(@RequestParam("startDate
Java
복사