这个问题与这个问题非常相似,该问题对于较旧的 Date
api。
我想与Java 8 LocalDateTime
API实现相同的目标。当我这样做时,
@RequestMapping("/locationSnapshot/{userId}/{pointInTime}")
public MyResponse getLocationInTime(
@PathParam(value="userId") Long userId,
@PathParam(value="pointInTime")
@DateTimeFormat(pattern="yyyy-MM-dd'T'HH:mm:ss") LocalDateTime pointInTime) {
MyResponse response = new MyResponse();
return response;
}
我得到了,
Failed to instantiate [java.time.LocalDateTime]: No default constructor
found; nested exception is java.lang.NoSuchMethodException:
java.time.LocalDateTime.<init>()
使用@pathvariable代替@pathparam
@RequestMapping("/locationSnapshot/{userId}/{pointInTime}")
public MyResponse getLocationInTime(
@PathVariable(value="userId") Long userId,
@PathVariable(value="pointInTime")
@DateTimeFormat(pattern="yyyy-MM-dd'T'HH:mm:ss") LocalDateTime pointInTime) {
MyResponse response = new MyResponse();
return response;
}
尝试在pointInTime
参数之前添加@RequestParam
。