Hibernate @email 不关心域或 FQDN
Hibernate @email doesn't care about domain or a FQDN
使用Spring 启动休眠。我在 poko
里有这样的东西
@Email
private String email;
这些示例输入:
- 假邮件
- 假邮件@
我收到以下错误,这是预期的:
email: not a well-formed email address.
但是对于这个输入:
- fakeemail@a
这算是可以的。 Hibernate 不关心域吗? (.com、.io、.company)?
PS:在此日期使用,最新版本在这里:https://mvnrepository.com/artifact/org.hibernate.validator/hibernate-validator/6.0.9.Final
如果您向名为 a
. 的本地主机发送电子邮件,fakeemail@a
可被视为有效域
一般来说,在电子邮件验证中,我们会接受更多严格有效的东西,以避免报告有效案例的错误。
如果您想要更严格,可以使用 @Email
注释的 regexp
属性在域中添加一个需要点的正则表达式。
如您所见Wikipedia
Valid email addresses:
- simple@example.com
- very.common@example.com
- disposable.style.email.with+symbol@example.com
...
- admin@mailserver1
(local domain name with no TLD, although ICANN highly discourages dotless email addresses)
最常见的无点电子邮件地址是 localhost
(例如 root@localhost
)。
但是,如果您有兴趣,可以制作 your own custom @Email annotation
使用Spring 启动休眠。我在 poko
里有这样的东西@Email
private String email;
这些示例输入:
- 假邮件
- 假邮件@
我收到以下错误,这是预期的:
email: not a well-formed email address.
但是对于这个输入:
- fakeemail@a
这算是可以的。 Hibernate 不关心域吗? (.com、.io、.company)?
PS:在此日期使用,最新版本在这里:https://mvnrepository.com/artifact/org.hibernate.validator/hibernate-validator/6.0.9.Final
a
. 的本地主机发送电子邮件,fakeemail@a
可被视为有效域
一般来说,在电子邮件验证中,我们会接受更多严格有效的东西,以避免报告有效案例的错误。
如果您想要更严格,可以使用 @Email
注释的 regexp
属性在域中添加一个需要点的正则表达式。
如您所见Wikipedia
Valid email addresses:
- simple@example.com
- very.common@example.com
- disposable.style.email.with+symbol@example.com ...
- admin@mailserver1 (local domain name with no TLD, although ICANN highly discourages dotless email addresses)
最常见的无点电子邮件地址是 localhost
(例如 root@localhost
)。
但是,如果您有兴趣,可以制作 your own custom @Email annotation