SpringBoot 中的 javax.validation.constraints.Email

2023-12-01

我有一个经过此验证的 bean:

@Email(message = "Email is not valid", regexp="{(?:[a-z0-9!#$%&'*+/=?^_`{|}~-]+(?:\\.[a-z0-9!#$%&'*+/=?^_`{|}~-]+)*|\"(?:[\\x01-\\x08\\x0b\\x0c\\x0e-\\x1f\\x21\\x23-\\x5b\\x5d-\\x7f]|\\\\[\\x01-\\x09\\x0b\\x0c\\x0e-\\x7f])*\")@(?:(?:[a-z0-9](?:[a-z0-9-]*[a-z0-9])?\\.)+[a-z0-9](?:[a-z0-9-]*[a-z0-9])?|\\[(?:(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\\.){3}(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?|[a-z0-9-]*[a-z0-9]:(?:[\\x01-\\x08\\x0b\\x0c\\x0e-\\x1f\\x21-\\x5a\\x53-\\x7f]|\\\\[\\x01-\\x09\\x0b\\x0c\\x0e-\\x7f])+)\\])}")
@NotEmpty(message = "Email cannot be empty")
private String email;

当电子邮件为空时,消息很好,但是当我输入此文本时

perisava.util.Random@1d7f0036

没有显示错误


javax.validation.constraints.Email注释取决于Jakarta Bean Validation providers用于验证。 Hibernate Validator 是唯一符合此要求的验证器。 默认情况下,休眠验证器将电子邮件与正则表达式匹配.*除非您自己提供正则表达式。 Hibernate 电子邮件验证器源代码是here.

一种解决方案是提供您自己的电子邮件正则表达式

@Email(message = "Email is not valid", regexp = "^[a-zA-Z0-9_!#$%&'*+/=?`{|}~^.-]+@[a-zA-Z0-9.-]+$")
@NotEmpty(message = "Email cannot be empty")
private String email;

官方标准是 RFC 5322。但它并没有涵盖现代电子邮件的所有情况。您可以找到更多解决方案here。即使这样,正则表达式也将由您决定。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

SpringBoot 中的 javax.validation.constraints.Email 的相关文章

  • Spring AspectJ 在双代理接口时失败:无法生成类的 CGLIB 子类

    我正在使用Spring的
  • Pig Udf 显示结果

    我是 Pig 的新手 我用 Java 编写了一个 udf 并且包含了一个 System out println 其中的声明 我必须知道在 Pig 中运行时该语句在哪里打印 假设你的UDF 扩展了 EvalFunc 您可以使用从返回的 Log
  • 谷歌应用程序引擎会话

    什么是java应用程序引擎 默认会话超时 如果我们将会话超时设置为非常非常长的时间 会不会产生不良影响 因为谷歌应用程序引擎会话默认情况下仅存储在数据存储中 就像facebook一样 每次访问该页面时 会话仍然永远存在 默认会话超时设置为
  • 在 Bash 中监控 tomcat,直到它完成部署 war 或应用程序

    怎么可能Tomcat在 bash 脚本中进行监控以检测它是否完成了战争或应用程序的部署 应用场景 Tomcat 开始于systemd Tomcat 开始于catalina sh 使用 Tomcat 管理器 Tomcat从Eclipse启动
  • 在接口中使用默认方法是否违反接口隔离原则?

    我正在学习 SOLID 原则 ISP 指出 客户端不应被迫依赖于他们所使用的接口 不使用 在接口中使用默认方法是否违反了这个原则 我见过类似的问题 但我在这里发布了一个示例 以便更清楚地了解我的示例是否违反了 ISP 假设我有这个例子 pu
  • 从最终实体获取根证书和中间证书

    作为密码学的菜鸟 我每天都会偶然发现一些简单的事情 今天只是那些日子之一 我想用 bouncy castle 库验证 java 中的 smime 消息 我想我几乎已经弄清楚了 但此时的问题是 PKIXparameters 对象的构建 假设我
  • 将 MOXy 设置为 JAXB 提供程序,而在同一包中没有属性文件

    我正在尝试使用 MOXy 作为我的 JAXB 提供程序 以便将内容编组 解组到 XML JSON 中 我创建了 jaxb properties 文件 内容如下 javax xml bind context factory org eclip
  • Eclipse Maven Spring 项目 - 错误

    I need help with an error which make me crazy I started to study Java EE and I am going through tutorial on youtube Ever
  • 帮助将图像从 Servlet 获取到 JSP 页面 [重复]

    这个问题在这里已经有答案了 我目前必须生成一个显示字符串文本的图像 我需要在 Servlet 上制作此图像 然后以某种方式将图像传递到 JSP 页面 以便它可以显示它 我试图避免保存图像 而是以某种方式将图像流式传输到 JSP 自从我开始寻
  • tomcat 中受密码保护的应用程序

    我正在使用 JSP Servlet 开发一个Web应用程序 并且我使用了Tomcat 7 0 33 as a web container 所以我的要求是tomcat中的每个应用程序都会password像受保护的manager applica
  • 尝试将 Web 服务部署到 TomEE 时出现“找不到...的 appInfo”

    我有一个非常简单的项目 用于培训目的 它是一个 RESTful Web 服务 我使用 js css 和 html 创建了一个客户端 我正在尝试将该服务部署到 TomEE 这是我尝试部署时遇到的错误 我在这里做错了什么 刚刚遇到这个问题 我曾
  • 使用 AsyncTask 传递值

    我一直在努力解决这个问题 但我已经到了不知道该怎么办的地步 我想做的是使用一个类下载文件并将其解析为字符串 然后将该字符串发送到另一个类来解析 JSON 内容 所有部件都可以单独工作 并且我已经单独测试了所有部件 我只是不知道如何将值发送到
  • java.io.Serialized 在 C/C++ 中的等价物是什么?

    C C 的等价物是什么java io Serialized https docs oracle com javase 7 docs api java io Serializable html 有对序列化库的引用 用 C 序列化数据结构 ht
  • 如何使用 jUnit 将测试用例添加到套件中?

    我有 2 个测试类 都扩展了TestCase 每个类都包含一堆针对我的程序运行的单独测试 如何将这两个类 以及它们拥有的所有测试 作为同一套件的一部分执行 我正在使用 jUnit 4 8 在 jUnit4 中你有这样的东西 RunWith
  • 专门针对 JSP 的测试驱动开发

    在理解 TDD 到底是什么之前 我就已经开始编写测试驱动的代码了 在没有实现的情况下调用函数和类可以帮助我以更快 更有效的方式理解和构建我的应用程序 所以我非常习惯编写代码 gt 编译它 gt 看到它失败 gt 通过构建其实现来修复它的过程
  • 非 Spring 托管类中 DI 的编译时编织

    我想为标记为的类配置编译时编织 Configurable注释能够将 spring 依赖项注入到初始化的类中new操作员 我不想使用加载时编织 因为我无权访问应用程序服务器的运行脚本 因此无法修改它 另外 我希望能够在测试中使用此类 我的意思
  • 如何使用mockito模拟构建器

    我有一个建造者 class Builder private String name private String address public Builder setName String name this name name retur
  • 在java中为组合框分配键

    我想添加一个JComboBox在 Swing 中这很简单 但我想为组合中的每个项目分配值 我有以下代码 JComboBox jc1 new JComboBox jc1 addItem a jc1 addItem b jc1 addItem
  • 如何将双精度/浮点四舍五入为二进制精度?

    我正在编写对浮点数执行计算的代码的测试 不出所料 结果很少是准确的 我想在计算结果和预期结果之间设置一个容差 我已经证实 在实践中 使用双精度 在对最后两位有效小数进行四舍五入后 结果始终是正确的 但是usually四舍五入最后一位小数后
  • 如何防止在Spring Boot单元测试中执行import.sql

    我的类路径中有一个 import sql 文件 其中包含一些 INSERT 语句 当使用 profile devel 运行我的应用程序时 它的数据被加载到 postgres 数据库中 到目前为止一切正常 当使用测试配置文件执行测试时 imp

随机推荐

  • 如何在Python中找到函数对象所需的参数?

    我有一个功能 f def f required arg optional arg None pass 我怎样才能返回一个列表required的参数名称f Using isinstance的结果inspect signature似乎不起作用
  • 是否可以在 MVC 3 中打开/关闭验证数据注释?

    我有两个单独的视图访问同一模型 当我将验证器数据注释放在模型上时 它会按照广告中的方式工作 并且如果留空或不在范围内 则会阻止提交数据 对于两个视图 但是 我有一个视图应该能够允许为属性保存空值或空值 而另一个视图需要要求输入或选择信息才能
  • jQuery 推栈

    我需要一些帮助才能理解pushStack 这里我举了一个例子 使用它和不使用它的结果是一样的http jsfiddle net Bz5n9 2 所以我想我真的不明白它是用来做什么的 Thanks 您当前正在添加到集合中 将一个新集合推送到堆
  • 在 JavaScript 中更改文本框文本

    我允许用户使用两个文本框之一来搜索数据库 一个是 ID 字段 一个是自由文本字段 顺便说一句 我正在使用 ASP NET 和 C 无论如何 我需要做的就是拥有它 这样当用户单击其中一个文本框时 另一个文本框文本就会被删除 因此另一个文本框是
  • CORE DATA objectId 不断变化

    我将一些数据导出到 XML 文件并放入远程 FTP 服务器中 我必须用唯一的属性来标识每个对象 这并不重要 但必须始终持久 gt 它永远不会改变 我不想创建唯一的属性 序列 序列等 我正在使用 objectID 但每次使用它时都会获得一个新
  • HttpResponseCache 在 Android Lollipop 中不起作用

    我一直在我的应用程序中成功使用 HttpResponseCache 但是当我的手机更新到 Lollipop 时 我意识到 HttpResponseCache 现在永远不会被 命中 总是执行网络请求 我已经确认 Lollipop 之前的 An
  • 如何在R光栅中获取网格周围的等高线?

    R中有一个栅格 如何绘制等高线around网格 不连接中心或其他任何东西 真正遵循网格的边界 具有某些值 或由某些掩码标识 以下示例显示如何获取值 0 6 的区域周围的等高线 如何执行相同操作 但线条遵循网格边界 该函数应该返回一个对象以添
  • 使用 Money gem 的表单选择设置货币

    我已经在这方面工作了好几个小时 但我无法弄清楚这一点 我愿意让用户根据他在表单中填写的价格选择相应的货币 我正在使用 Money Gem https github com RubyMoney money 所有值均已正确设置 但货币仅设置为其
  • 使用 JavaScript 重新加载页面的首选方法? [关闭]

    Closed 这个问题是基于意见的 目前不接受答案 您更喜欢哪种方式重新加载当前页面 使用按钮 1
  • 在 FlatList 上 React Native“keyboardDismissMode”

    是否有可能防止键盘在滚动时消失FlatList 使用 ScrollView 时 将属性 keyboardDismissMode 设置为 none 是解决此问题的方法 但这对我在 FlatList 中不起作用 我在一个自制组件 即 Stack
  • 如何删除由 start/end Document 方法添加的 StaxEventItemWriter 标记?

    如何删除由开始 结束文档方法添加的 StaxEventItemWriter 标记 当我生成 XML 文件时 它是默认添加的 所以请任何人告诉我如何删除默认根标签 Ex
  • dplyr 创建因子水平的合计百分比

    如何使用 dplyr 为每个州创建因子变量水平的比例 例如 我想添加一个变量来指示数据框中每个州内女性的百分比 gen data state lt rep c rep Idaho 10 rep Maine 10 2 student id l
  • size_t 和 unsigned int 之间的区别?

    我很困惑size t 我在互联网上搜索过 到处都提到了这一点size t是无符号类型 因此它只能表示非负值 我的第一个问题是 如果它只用来表示非负值 为什么我们不使用unsigned int代替size t 我的第二个问题是 是size t
  • SqlDependency.Start(connectionString) 每次都返回 false

    我设置了访问数据库的权限 use DbName GRANT SUBSCRIBE QUERY NOTIFICATIONS TO dbuser use DbName GRANT SELECT ON OBJECT schema tableName
  • w3c document.forms[0].fieldname 等效项

    我一直在使用 document forms 0 fieldname value 从表单中获取 javascript 中的值 但我想使用名称来引用该字段而不是 0 这些天以来等效的是什么
  • 在 MarkLogic 8 中调用具有来自其余端点的依赖项的 xquery 库

    我们正在从 MarkLogic 6 升级到 8 并且在调用库模块时遇到了一些问题 我们有 xquery 库模块 可以从自定义 REST 扩展和非 REST xquery 调用 马克逻辑公司文档表示 REST 端点可以使用通过新 ext 端点
  • 程序化表单提交

    我想抓取网页的内容 内容是在该网站上填写并提交表格后生成的 我已经阅读了如何抓取最终结果内容 网页 但如何以编程方式提交表单 我正在使用 python 并读到我可能需要获取带有表单的原始网页 解析它 获取表单参数 然后执行 X 有人能指出我
  • 如何在应用程序中将粤语设置为语音搜索语言?

    我当前的代码在使用 ZH ISO 代码表示普通话时工作正常 但不适用于粤语 这是下面的代码 Intent i new Intent RecognizerIntent ACTION RECOGNIZE SPEECH String myLang
  • 无法在 Javascript 中动态添加项目到 Owl Carousel

    我正在尝试动态地将项目添加到猫头鹰旋转木马 我是这样做的 HTML div class owl carousel lesson carousel div class item item logo div class product item
  • SpringBoot 中的 javax.validation.constraints.Email

    我有一个经过此验证的 bean Email message Email is not valid regexp a z0 9 a z0 9 x01 x08 x0b x0c x0e x1f x21 x23 x5b x5d x7f x01 x0