【发布时间】:2016-05-26 00:45:02
【问题描述】:
如何在春季验证我的路径变量。我想验证 id 字段,因为它唯一的单个字段我不想移动到 Pojo
@RestController
public class MyController {
@RequestMapping(value = "/{id}", method = RequestMethod.PUT)
public ResponseEntity method_name(@PathVariable String id) {
/// Some code
}
}
我尝试向路径变量添加验证,但仍然无法正常工作
@RestController
@Validated
public class MyController {
@RequestMapping(value = "/{id}", method = RequestMethod.PUT)
public ResponseEntity method_name(
@Valid
@Nonnull
@Size(max = 2, min = 1, message = "name should have between 1 and 10 characters")
@PathVariable String id) {
/// Some code
}
}
【问题讨论】:
-
您的代码中没有路径变量,至少在您的 URL 中没有,所以不确定需要验证什么...
-
对不起,我在此处复制和粘贴代码时错过了它
-
您可以在 method_name 方法中尝试简单的 if 循环,例如 if(id==null || id.length()2){ String message = "name should有 1 到 10 个字符”;如果循环结果为真,您可以根据您的要求返回 ResponseEntity,
-
@R.A.S.任何答案对您有帮助吗?还是有其他解决方案/问题?
-
感谢 Patrick,您的解决方案有效
标签: spring spring-mvc spring-security spring-boot spring-data