JAVA休息两个日期路径参数或查询参数
问题描述:
我有一个休息服务,它验证日期现在我需要修改它需要两个日期,但我不知道如果使用@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) {
答
如果你不想使用第三方的东西,我建议你定义的文本日期的格式。你可以使用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);
/*
...
*/
}
答
Date类是使用JAX-RS,因为它不是一个简单的类型无法序列。您需要使用MessageBodyReader/Writer开发相同的功能。 Click Here更多
或者您可以使用一些第三方的东西来配置完成它。