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

Hibernate Validator-@Length-如何为min和max指定单独的消息?

秦皓君
2023-03-14
问题内容

我正在使用Hibernate验证程序在Web应用程序中进行表单验证。我将@Length注释用于我的String属性,如下所示:

@Length(min = 5, message = "The field must be at least 5 characters")
private String myString;

但是,如果String超过50个字符,则需要显示其他消息。有没有办法使用现成的@Length验证程序来执行此操作?我想做的一个例子(编译器不会让我)如下:

@Length(min = 5, message = "The field must be at least 5 characters")
@Length(max = 50, message = "The field must be less than 50 characters")
private String myString;

我已经尝试了@Max和@Min,但它们并没有执行我想要的操作。任何投入将不胜感激!


问题答案:

您可以@Length使用内部列表注释(在Bean验证/休眠验证器中为每种约束类型定义的)在一个元素上指定多个约束,如下所示:

@List({
    @Length(min = 5, message = "The field must be at least 5 characters"),
    @Length(max = 50, message = "The field must be less than 50 characters")
})
private String myString;

顺便说一句。由于可移植性的原因,我建议更喜欢Bean Validation
API定义的@Size@Length



 类似资料:
  • 问题内容: 任何人都可以从官方MySQL文档中澄清这一点 使用索引…查找特定索引列key_col的MIN()或MAX()值。这由预处理器优化,该预处理器检查是否在索引中在key_col之前出现的所有关键部分上使用WHERE key_part_N =常量。在这种情况下,MySQL对每个MIN()或MAX()表达式执行一次键查找,并将其替换为常量。如果所有表达式都用常量替换,查询将立即返回。例如: S

  • 本文向大家介绍如何让IE6支持min-width和max-width?相关面试题,主要包含被问及如何让IE6支持min-width和max-width?时的应答技巧和注意事项,需要的朋友参考一下 利用IE特有的css语法 参考文章

  • 问题内容: 在以下查询中,您认为哪种方法更好?您的原因是什么(代码效率,更好的可维护性,更少的WTFery)… 问题答案: 在最坏的情况下,如果要查看未索引的字段,则使用需要对表进行一次完整的遍历。使用并且需要一个文件排序。如果针对大表运行,则预期的性能可能会存在显着差异。作为无意义的数据点,我的开发服务器上的106,000行表花了0.36秒,花了0.84秒。 但是,如果您正在查看索引列,则很难注

  • 注意:这个问题源自一个死的链接,这是以前的一个SO问题,但这里是... 看到这段代码(注意:我确实知道这段代码不会“工作”,应该使用--我只是从链接的问题中提取出来的): 根据和的javadoc,两者的参数都应该是一个。然而,这里的方法引用是类的静态方法。

  • 在这个例子中,我们设置整数的最小和最大数字以及数字的小数部分。 IOTester.java import java.text.NumberFormat; import java.util.Locale; public class I18NTester { public static void main(String[] args) { Locale enLocale = new

  • 问题内容: 在C / Objective- C中,可以使用MIN和MAX宏在两个数字之间找到最小值和最大值。Swift不支持宏,并且语言/基本库中似乎没有等效项。如果一个去同一个定制的解决方案,也许基于这样的泛型一个? 问题答案: 并且已经在Swift中定义: 请参阅有关Swift中已记录和未记录的内置函数的精彩文章。