[英]Annotation for Mandatory attribute in json validation in spring rest controller
我有一个Spring Rest服务,它接受Person对象。 人员对象具有名称,电话号码和电子邮件。 添加人员时,电话号码是必填项。 如果电话号码属性存在,它将使用@NotNull
或@NotBlank
或@NotEmpty
验证是否为空或空。 但是,如果该属性不存在,则验证无效。 请提出建议的所有验证注释,以检查JSON请求中是否存在该属性。
以下是请求正文测试用例
{“ name”:“ anu”,“ phoneNumber”:“”,“ email”:“ test@gmail.com”} //验证有效
{“ name”:“ anu”,“ phoneNumber”:null,“ email”:“ test@gmail.com”} //验证有效
{“ name”:“ anu”,“ email”:“ test@gmail.com”} //验证无效”,查找注释所需的帮助。
class Person {
@NotNull
private String name;
@NotNull(message = "email.empty")
@Email(regexp = EMAIL_PATTERN, message = "email.invalid")
private String email;
@NotNull(message = "phonenumber.empty")
@Pattern(regexp = PHONE_NUMBER_PATTERN, message = "phonenumber.invalid")
private String phoneNumber;
...
}
请找到我的控制器
@RequestMapping(value = "/createAdminPerson", method = POST, consumes = BusinessPersonConstants.MEDIA_TYPE, produces = "application/json;charset=UTF-8")
public ResponseEntity<Boolean> createAdminPerson(
@Validated @RequestBody Person createAdminPerson) {
...
}
我尝试了@ NotNull,@ Notempty,@ NotBlank。 请帮忙
在控制器中,我使用@Validated来验证请求主体,当我尝试@Valid时,验证工作正常。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.