当前位置: 首页 > 面试题库 >

仅当字段不为空时验证

黄向明
2023-03-14
问题内容

我使用JSR303 Spring Validation并且有以下内容;

@Digits(fraction = 0, integer = 15)
private String tpMobile;

验证说Must be number between 10-15 digits,但问题是该字段是 可选的
。因此,当用户将其留空时,也会显示相同的错误消息。

因此,我想做的是仅在字段不为空时验证。如果该字段为空,则跳过该字段的验证


问题答案:

@Digit我建议您不要使用,而是使用@Pattern(message="YOUR_MESSAGE", regexp="REGULAR_EXPRESSION")

主要原因是我们显示了要限制用户的一组值的消息,在此情况下,您的条件消息中显示了您不想限制的值。

因此,您想限制用户输入除空格和数字之外的其他任何内容,为此输入一个正则表达式,然后使用@Pattern。

对于您的情况:

@Pattern(message="YOUR_MESSAGE", regexp="^(\\s*|\\d{10,15})$")


 类似资料:
  • 问题内容: 我有一条更新语句,用于更新ID = xx的字段x,y和z。 在表中,我有几个不同的x_created_datetime字段(用于由不同人员维护/输入的记录的不同部分)。我想编写一个查询,如果为null则将更新此字段,但如果不为null则将其保留。 所以我有: 我需要的是一种添加以下内容的方法,但始终会更新上面的内容: 我希望我可以在不进行第二次事务处理的情况下就可以做到这一点。关于如何

  • 这个问题现有两种变体: 仅当字段不为空时验证:有条件地处理字符串的解决方案 Hibernate验证-仅在对象不为null时进行验证:唯一的答案演示了该行为,并提示您在手动触发验证时如何处理该行为 我的问题添加了限定符,即在可能为空的对象上使用@Valid时如何执行此操作。 这里的用例是,我们有两个字段,其中一个或另一个需要不为null(包含字段的类上的自定义验证器)。当一个不为null时,我需要它

  • 我上传文件有问题。我使用kartik-v/yii2小部件文件输入扩展。这是我的代码: 表单模型规则 窗体视图 控制器动作 当我提交表单时,总是出现错误“需要图像字段”。我已经阅读了很多教程,但在使用ajax验证时仍然存在同样的问题。有人能看看它,告诉我我做错了什么吗?

  • GraphQL是否有可能让客户端告诉服务器,只有当某个字段不是时,它才需要该字段? 考虑到这个问题 然后,反应应该是这样的 而不是 这是否可能在不违反GraphQL规范的情况下实现?

  • 问题内容: 有没有一种方法可以使用此处定义的注释来定义Hibernate验证规则,说明至少一个字段不能为null? 这将是一个假设的示例(实际上不存在): 在所示的情况下,fieldA可以为null或fieldB可以为null,但不能同时为两者。 一种方法是创建自己的验证器,但是我想避免它已经存在。如果您已经验证过,请分享一个验证人…谢谢! 问题答案: 我终于写了整个验证器: 用法示例:

  • 这个活动我有1个活动,3个片段。 在3个片段中,当复选框被选中或edittext不为空时,我有布尔值返回true。 当EditText不为空且我的复选框处于选中状态时,我想禁用此按钮。。 当我添加了像sexMan这样的东西。isChecked()到方法EditTextCompleted()我的应用程序崩溃。。。。 那么我如何将这些条件连接到一个地方呢? 复选框侦听器 编辑文本监听器 @在TextC