我正在使用弹簧验证:
@NotNull
@Size(max = 128, min = 6)
@Email
private String username;
但我想确保新 TLD 得到尊重。Spring 是否甚至会查看电子邮件域 TLD 并确保它们得到遵守?
举个例子:我想验证以下内容:joe@emperor.clothing
我正在使用弹簧验证:
@NotNull
@Size(max = 128, min = 6)
@Email
private String username;
但我想确保新 TLD 得到尊重。Spring 是否甚至会查看电子邮件域 TLD 并确保它们得到遵守?
举个例子:我想验证以下内容:joe@emperor.clothing
你到底在追求什么?你是什么意思:
但我想确保新 TLD 得到尊重
@Email
是 Hibernate Validator 提供的 Bean Validation 约束,它将验证给定电子邮件是否符合语法RFC 2822。它通过正则表达式来实现。
的 javadocsEmailValidator
说:
有效电子邮件的规范可以在 RFC 2822 中找到,并且可以根据规范提出一个匹配所有有效电子邮件地址的正则表达式。然而,正如本文所讨论的,实现 100% 兼容的电子邮件验证器并不一定可行。这种实现是一种权衡,试图匹配大多数电子邮件,同时忽略例如带有双引号或评论的电子邮件。
这也意味着,没有建立 Internet 连接来验证是否确实存在顶级域(如果这就是您的意思)。