gpt4 book ai didi

hibernate-validator - 如何在 Hibernate 验证器中添加自定义错误消息

转载 作者:行者123 更新时间:2023-12-04 15:26:20 25 4
gpt4 key购买 nike

我有一个像这样的简单类,

import javax.validation.constraints.NotNull;
import org.hibernate.validator.constraints.Length;

public class Form implements Serializable {
@NotNull
@Length(min = 2, max = 20)
private String lastName;
}

我在类路径中有 messages.properties 文件。然后通过 Spring bean 加载它,如下所示,
<bean name="validator"
class="org.springframework.validation.beanvalidation.LocalValidatorFactoryBean">
<property name="validationMessageSource">
<ref bean="resourceBundleLocator"/>
</property>
</bean>

<bean name="resourceBundleLocator" class="org.springframework.context.support.ReloadableResourceBundleMessageSource">
<property name="basenames">
<list>
<value>classpath*:messages.properties</value>
</list>
</property>
</bean>

我想要的只是根据验证的 bean 获取自定义的错误消息。换句话说,我想让每个 ConstraintViolation 对象返回我在我的属性文件中定义的错误消息,而不是默认的。是否可以使用类似这种格式 {xxx.yyyy.zzzz} 的值添加消息属性并从 messages.properties 文件中引用该消息?
ValidatorFactory factory = Validation.buildDefaultValidatorFactory();
Validator validator = factory.getValidator();
Set<ConstraintViolation<Form>> inputErrors = validator.validate(form);

如果我想为 @NotNull 和 @Length 自定义默认消息,我该怎么做?

我在 Hibernate 验证方面的经验是 , 任何示例代码或 分步指南将不胜感激。

最佳答案

您拥有保存消息值的资源包文件。

我认为您必须使用路径,即 @NotNull注解
手动覆盖消息!
喜欢 javax.validation.constraints.NotNull=Notnull error happened!或类似的东西!

看这里:

Hibernate Validator - The error message

希望有帮助

关于hibernate-validator - 如何在 Hibernate 验证器中添加自定义错误消息,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7093468/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com