스프링 부트 컨트롤러 방식에서 요청 매개변수로 타임스탬프를 전달하고 싶습니다.
//엔티티 클래스
@Entity
public class EventCalendar {
@Id
@GeneratedValue(strategy=GenerationType.SEQUENCE)
private int id;
private String eventName;
private String city;
private String address;
@Temporal(TemporalType.TIMESTAMP)
private Date createRecord;
@Temporal(TemporalType.TIMESTAMP)
private Date startTime;
@Temporal(TemporalType.TIMESTAMP)
private Date endTime;
//제어 장치
@RestController
@RequestMapping("/events")
public class controller{
@GetMapping("/getevents8")
public List<EventCalendar> getEvents8(@RequestParam int page,@RequestParam Date d1,@RequestParam Date d2 ){
Sort sort=new Sort(Sort.Direction.DESC,"createRecord");
Pageable pageRequest =PageRequest.of(page, 3,sort);
List<EventCalendar> events;
events=eventRepository.findByCreateRecordBetween(d1, d2, pageRequest);
return events;
}
}
//json을 사용하여 삽입한 타임스탬프 예제
{
"id":10,
"eventName":"Kabbadi pro kidz",
"city":"Noida",
"address":"sector 63",
"createRecord":"2020-03-31T15:45:01Z",
"startTime":"2020-04-08T07:30:10Z",
"endTime":"2020-04-09T10:15:18Z",
}
이제 내가 원하는 것은 요청 매개변수에 타임스탬프를 전달하는 것입니다.
PostMan에서 이 요청을 전달하고 있습니다.
http://localhost:8082/events/getevents8/?page=0&d1=2020-04-01T09:18:18Z&d2=2020-04-06T23:15:18Z
그러나이 오류가 발생했습니다.
eclipse
Failed to convert value of type 'java.lang.String' to required type 'java.util.Date'
Postman
{
"timestamp": "2020-03-31T10:11:34.196+0000",
"status": 400,
"error": "Bad Request",
"message": "Failed to convert value of type 'java.lang.String' to required type 'java.util.Date'; nested exception is org.springframework.core.convert.ConversionFailedException: Failed to convert from type [java.lang.String] to type [@org.springframework.web.bind.annotation.RequestParam java.util.Date] for value '2020-04-01T09:18:18Z'; nested exception is java.lang.IllegalArgumentException",
"path": "/events/getevents8/"
}
Json 객체 없이 타임스탬프를 전달하는 방법을 모르겠습니다. 요청에서 매개변수로 전달하는 방법을 알고 싶습니다.