use*_*970 7 java jax-rs jersey bean-validation
我在Java中使用Jersey来获得一个简单的Web服务器.我正在尝试处理url查询参数,比如
/path?value1=X&value2=Y&value3=Z
Run Code Online (Sandbox Code Playgroud)
我能够通过使用@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) {
...
}
Run Code Online (Sandbox Code Playgroud)
现在我的问题是我需要验证输入.我主要是为了确保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) {
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
8299 次 |
| 最近记录: |