簡體   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