这个问题与这个SO问题非常相似,该问题是针对旧的
我想使用Java 8的
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>()
@RequestParam
正确地获取了它,但根据OP的要求,我希望它能够作为@PathParam
工作。对此有什么想法吗? - Shubham A.@PathParam
属于javax.ws.rs
包,如果您打算使用 Spring 开发 REST Web 服务,则应使用@RequestParam
(或任何其他 Spring 注释)。如果您使用 Jetty,则应首选使用@PathParam
。 - sensitive_piece_of_horseflesh@PathVariable
呢? - Kadzhaev Marat