[英]Java spring date @Pattern allow empty string in DTO
我正在处理 java web 项目,我想验证我的 DTO 日期字段。 我使用了import javax.validation.constraints.Pattern;
这是我的代码:
@Pattern(regexp = "^([0-9]{2}/[0-9]{2}/[0-9]{4})$", message = "Date format should be dd/mm/yyyy")
private String myDatefield;
当我发送无效的日期格式时,此验证工作正常。 但问题是该字段不是强制性的,所以我想容忍该字段为空的情况:
{
"myDatefield":""
}
但在这种情况下,我仍然收到错误"Date format should be dd/mm/yyyy"
你有什么建议我可以修改我的 regx 模式以验证日期格式并接受空字符串。
提前致谢。
添加^$
应该可以解决问题。
@Pattern(regexp = "^$|^([0-9]{2}/[0-9]{2}/[0-9]{4})$", message = "Date format should be dd/mm/yyyy")
private String myDatefield;
^$
为您提供空字符串的情况|
是替代模式的or
分隔符
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.