繁体   English   中英

JAVA Rest两个日期Path参数或Query参数

[英]JAVA Rest two dates Path param or Query param

我有一个可以验证日期的休息服务,现在我需要将其修改为两个日期,但是我不知道是否要使用@PathParam@QueryParam以及是否可以在两个@PathParam之间插入@PathParam
这是原始代码:

 @Path("isDateValid/{date}/{itemId}")
    public boolean isDateValid(@PathParam("date") Date date, @PathParam("itemId") Long itemId) {

我应该这样做吗:

 @Path("isDateValid/{startDate}/{endDate}/{itemId}")
    public boolean isDateValid(@PathParam("startDate") Date startDate, @PathParam("endDate") Date endDate, @PathParam("itemId") Long itemId) {

日期类不是简单类型,因此无法使用JAX-RS进行序列化。 您需要使用MessageBodyReader / Writer进行开发。 点击这里更多

或者,您可以使用一些第三方的东西进行配置以完成它。

点击这里更多

如果您不想使用第三方资料,建议您为文本日期定义一种格式。 您可以使用SimpleDateFormat类(避免使用空格)。 您可以使用以下代码。

@Path("isDateValid/{itemId}")
public boolean isDateValid(@PathParam("itemId") Long itemId) {
    @QueryParam("begin") String sBegin; 
    @QueryParam("end") String sEnd;

    SimpleDateFormat sdf = new SimpleDateFormat(/* Your patern, for example "yyMMddHHmmssZ"*/);

    Date dBegin = sdf.parse(sBegin);
    Date dEnd = sdf.parse(sEnd);

/*
...
*/
}

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM