Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/variables/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 什么';s长度注释HBM等效值?_Java_Hibernate_Hibernate Mapping - Fatal编程技术网

Java 什么';s长度注释HBM等效值?

Java 什么';s长度注释HBM等效值?,java,hibernate,hibernate-mapping,Java,Hibernate,Hibernate Mapping,我想定义一个org.hibernate.validator.constraints.Length(min=1,max=5),但我必须使用HBM映射。我如何达到同样的行为?理想情况下,我希望在第一种方法中使用javax.validation.constraints.Size(min=1,max=5),因为这是Java API本身。HBM文件与验证无关 您可以使用validation.xml,不过: META-INF/validation.xml <validation-config>

我想定义一个
org.hibernate.validator.constraints.Length(min=1,max=5)
,但我必须使用HBM映射。我如何达到同样的行为?理想情况下,我希望在第一种方法中使用
javax.validation.constraints.Size(min=1,max=5)
,因为这是Java API本身。

HBM文件与验证无关

您可以使用
validation.xml
,不过:

META-INF/validation.xml

<validation-config>
    ...
    <constraint-mapping>META-INF/validation/constraints-myEntity.xml</constraint-mapping>
</validation-config>
<constraint-mappings>
    <default-package>my.package</default-package>
    <bean class="MyEntity">
        <field name="myField">
            <constraint annotation="javax.validation.constraints.Pattern">
                <element name="regexp">.*[A-Z]</element>
            </constraint>
        </field>
    </bean>
</constraint-mappings>

...
META-INF/validation/constraints-myEntity.xml
META-INF/validation/constraints myEntity.xml

<validation-config>
    ...
    <constraint-mapping>META-INF/validation/constraints-myEntity.xml</constraint-mapping>
</validation-config>
<constraint-mappings>
    <default-package>my.package</default-package>
    <bean class="MyEntity">
        <field name="myField">
            <constraint annotation="javax.validation.constraints.Pattern">
                <element name="regexp">.*[A-Z]</element>
            </constraint>
        </field>
    </bean>
</constraint-mappings>

我的包裹
.*[A-Z]

您可以使用.hbm.xml文件映射类,但仍然使用注释进行验证约束。我很困惑。不能使用HBM映射文件进行验证,它们特定于Hibernate ORM。也许你的意思是?@Guillaume,我可以这样做,问题是我有一个maven构建,它生成模型类,然后删除HBM文件中不包含的每个修改。@crizzis,不,我的意思是我只能使用HBM e而不是注释进行映射。在这种情况下,我的注释仍然有效