2

`这是我的 sample.xml 文件

    <field name="userName">
      <constraint annotation="org.hibernate.validator.constraints.NotBlank"/>
      <constraint annotation="javax.validation.constraints.Size">
      <element name ="min">1</element>
       <element name ="max">20</element>
       </constraint>
    </field>`

如果有一种方法可以配置休眠验证器,以便“大小”验证仅在 NotBlank valditons falis 时运行,并且仅显示大小不正确的验证消息。这是修改后的 xml

    <bean class="User">
    <field name="systemCode">
        <constraint annotation="org.hibernate.validator.constraints.NotBlank">
            <groups>
                <value>UserNameNotBlank</value>
            </groups>
        </constraint>
        <constraint annotation="javax.validation.constraints.Size">
            <groups>
                <value>UserNameSize</value>
            </groups>
            <element name="min">1</element>
            <element name="max">4</element>
        </constraint>
    </field>
</bean>

创建接口的下一步是什么,可以在字段级别执行排序,还是只能在方法级别执行排序。注意:请提供基于 xml 的配置的参考链接。

4

1 回答 1

2

除非使用组序列,否则约束验证没有顺序。规范说:

默认情况下,无论它们属于哪个组,约束都不会按特定顺序进行评估...

再往前走一点

为了实现这种排序,一个组可以定义为其他组的序列......

另见http://beanvalidation.org/1.1/spec/#constraintdeclarationvalidationprocess-groupsequence-groupsequence

于 2013-10-29T11:47:27.700 回答