簡體   English   中英

使用Jersey查詢參數驗證

[英]query parameter validation with Jersey

我在Java中使用Jersey來獲得一個簡單的Web服務器。 我正在嘗試處理url查詢參數,比如

/path?value1=X&value2=Y&value3=Z

我能夠通過使用@QueryParam注釋來提取查詢值

@GET
@Produces(MediaType.APPLICATION_XML)
@Path("/path")
public String getUpdate(@QueryParam("All") List<String> allParam, 
        @QueryParam(value = "value1") String value1, 
        @QueryParam(value = "value2") String value2, 
        @QueryParam(value = "value3") String value3) {
        ...
}

現在我的問題是我需要驗證輸入。 我主要是為了確保value1,value2和value3遵循特定的格式。 我還想確保這些參數不為空。

我查看了Jersey的Bean Validation文檔,但似乎很難遵循。 這可能是因為我對Jersey框架還有些新意​​。

那么如何設置查詢參數驗證呢? 是否更容易關注我可能被引導到的資源/示例? 謝謝

當@ VA31鏈接時,如果您的球衣足夠新,您可以像這樣使用bean驗證。

@GET
@Produces(MediaType.APPLICATION_XML)
@Path("/path")
public Response getUpdate(
    @QueryParam("value1")
    @NotNull
    @Size(min = 1, max = 255)
    @Pattern(regexp = "\\d+")
    String value1, 
    @QueryParam("value2")
    @Min(52)
    @Max(53)
    int value2, 
    @QueryParam("value3")
    @NotNull
    Integer value3) {


}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM