我正在尝试获取具有时间戳的用户的所有数据:
@GetMapping("/datum/{userID}/{timeStamp}") List<Datum> getDataSingleUserTimeRange(@PathVariable Long userID, @PathVariable LocalDateTime timeStamp) { .... }
现在要测试这个Spring Boot rest api,在邮递员中,我打电话GET和url- http://localhost:8080/datum/2/2019-12-15T19:37:15.330995 。
GET
http://localhost:8080/datum/2/2019-12-15T19:37:15.330995
但这给了我错误提示: 无法将类型’java.lang.String’的值转换为所需的类型’java.time.LocalDateTime’
我该如何解决?
我不知道这是否是最适度的方法,但这是我所做的:
@GetMapping("/datum/{userID}/{timeStamp}") List<Datum> getDataSingleUserTimeRange(@PathVariable Long userID, @PathVariable String timeStamp) { DateTimeFormatter formatter = DateTimeFormatter.ISO_DATE_TIME; LocalDateTime dateTime = LocalDateTime.parse(timeStamp, formatter); ... return datumRepository.findUsingTime(start,end); }
作为字符串传递并进行解析。并且dateTime.truncatedTo(ChronoUnit.NECESARRY_UNIT);可以使用。
dateTime.truncatedTo(ChronoUnit.NECESARRY_UNIT);