2017-03-01 91 views
0

我有一个休息服务,它验证日期现在我需要修改它需要两个日期,但我不知道如果使用@PathParam@QueryParam,如果我可以插入它之间2 @PathParam
这一点,原代码:JAVA休息两个日期路径参数或查询参数

@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) { 

回答

1

如果你不想使用第三方的东西,我建议你定义的文本日期的格式。你可以使用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); 

/* 
... 
*/ 
} 
1

Date类是使用JAX-RS,因为它不是一个简单的类型无法序列。您需要使用MessageBodyReader/Writer开发相同的功能。 Click Here更多

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

Click Here更多

相关问题