【发布时间】:2021-02-08 00:45:31
【问题描述】:
我有一个关于 Spring Boot、正则表达式和对 REST API 调用主体中传递的属性执行验证的问题。
我想验证一个至少包含 1 个大写字母、1 个数字和 13 个字符的密码字段。
其他验证正在运行,但正则表达式在 bean 上不起作用。
我已经在编辑器中成功尝试了以下内容。
https://regex101.com/r/lfgL85/1
^(?=.*[0-9])(?=.*[A-Z])
但是,当我使用以下注释在 Java bean 上设置模式时,它似乎在单元测试中不起作用。有什么想法吗?
public class User {
@NotNull
private String name;
@Size(min=13)
@Pattern(regexp="^(?=.*[0-9])(?=.*[A-Z])$", message = "Password must contain at least 1 number and uppercase character")
private String password;
...
}
【问题讨论】:
标签: java spring-boot validation