spring

@DateTimeFormat

핑구뱅구 2023. 2. 17. 09:03

파라미터로 사용되는 인스턴스 변수에 @DateTimeFormat을 적용해서 변환이 가능한다.

 

1. 파라미터로 받을 객체를 만든다. 

2. dueDate에 @DateTimeFormat을 쓰고 pattern을 기입한다.

package com.example.domain;

import lombok.Data;
import org.springframework.format.annotation.DateTimeFormat;

import java.util.Date;

@Data
public class TodoDTO {

    private String title;

    @DateTimeFormat(pattern = "yyyy/MM/dd")
    private Date dueDate;
}

 

3. 컨트롤러

@Controller
@RequestMapping("/sample/*")
@Log4j
public class SampleController {

    @GetMapping("/ex03")
    public String ex03(TodoDTO todo) {
        log.info("todo: " + todo);
        return "ex03";
    }

}

 

4. http://localhost:8087/sample/ex03?title=test&dueDate=2018/01/03     URL 요청

 

5. Server에 찍히는 log
2023-02-17 08:50:35 INFO : com.example.controller.SampleController >> todo: TodoDTO(title=test, dueDate=Mon Jan 03 00:00:00 KST 2018)

 

 

잘못된 요청

1. http://localhost:8087/sample/ex03?title=test&dueDate=20180103   URL 요청

 

응답 ) HTTP 상태 400 – 잘못된 요청