原文地址:https://cloud.tencent.com/developer/ask/176725
在List <String>上添加@NotNull或Pattern约束?
- 回答 (2)
- 关注 (0)
- 查看 (104)
我们如何确保列表中的各个字符串不为空/空或遵循特定模式
@NotNull List<String> emailIds;
我还想添加一个模式
@Pattern("\b[A-Z0-9._%+-]+@[A-Z0-9.-]+\.[A-Z]{2,4}\b.")
但我可以没有它。但我肯定希望有一个约束,它将检查列表中的任何字符串是否为空或空白。Json架构也将如何
"ids": { "description": "The ids associated with this.", "type": "array", "minItems": 1, "items": { "type": "string", "required" :true } } "required" :true does not seem to do the job
写回答关注邀请回答
提问于 2018-08-23
在List <String>上添加@NotNull或Pattern约束?
写回答关注
2 个回答
用户回答回答于 2018-08-23
你可以为电子邮件字符串创建一个简单的包装类:
public class EmailAddress { @Pattern("\b[A-Z0-9._%+-]+@[A-Z0-9.-]+.[A-Z]{2,4}\b.") String email; //getters and setters }
然后标记@Valid
现有对象中的字段:
@NotNull @Valid List<EmailAddress> emailIds;
然后验证器将验证列表中的每个对象。
用户回答回答于 2018-08-23
例:
List<@Positive Integer> positiveNumbers;
List<@NotNull @Pattern(regexp="\\b[A-Z0-9._%+-]+@[A-Z0-9.-]+.[A-Z]{2,4}\\b") String> emails;
参考文献: