@NotNull
@Pattern(regexp = "^(|([a-zA-Z0-9_\\-\\.]+)@([a-zA-Z0-9_\\-\\.]+)\\.([a-zA-Z]{2,5}){1,25})+([;.](([a-zA-Z0-9_\\-\\.]+)@([a-zA-Z0-9_\\-\\.]+)\\.([a-zA-Z]{2,5}){1,25})+)*$", message = "please provide valid email address")
@JsonProperty("to")
private String toStr;
toString:多个邮箱组成的字符串(由分号隔开)
该正则表达式是判断整个字符串,而不是校验单个邮箱。单个邮件校验可使用@Email
Sonarlint 扫描之后弹出警告以上提示。
解决方案:
- 去掉@Pattern校验,在EmailUtil中添加函数对toString进行校验。
- Sonarlint disable rule,因为toString不会影响其他代码。