springmvc的注解验证是怎么加进去的

本文详细解析了HibernateValidator的核心组件ValidatorImpl及其内部的ConstraintHelper,探讨了如何在Java应用程序中使用这些组件进行有效的数据验证。重点介绍了ValidatorImpl中的validateConstraintsForDefaultGroup方法以及ConstraintHelper中如何添加各种默认的验证器。此外,文章还讨论了自定义验证器的方法和注意事项。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

The main Bean Validation class. This is the core processing class of Hibernate Validator.

ValidatorImpl:validateConstraintsForDefaultGroup

ValidatorFactoryImpl(constraintHelper)
constraintHelper中添加了各种默认的验证器


public ValidatorFactoryImpl(ConfigurationState configurationState) {
this.messageInterpolator = configurationState.getMessageInterpolator();
this.traversableResolver = configurationState.getTraversableResolver();
this.parameterNameProvider = configurationState.getParameterNameProvider();
this.beanMetaDataManagerMap = Collections.synchronizedMap( new IdentityHashMap<ParameterNameProvider, BeanMetaDataManager>() );
this.constraintHelper = new ConstraintHelper();
this.typeResolutionHelper = new TypeResolutionHelper();
this.executableHelper = new ExecutableHelper( typeResolutionHelper );




Constraint这个注解是很重要的 groups等两个方法也是必须

@Target({ METHOD, FIELD, ANNOTATION_TYPE, CONSTRUCTOR, PARAMETER })
@Retention(RUNTIME)
@Constraint(validatedBy = { JSONValidator.class })
public @interface BeJSON {
String message() default "{must.be.json.format}";

public Class<?>[] groups() default {};

Class<? extends Payload>[] payload() default {};

}

继承ConstraintValidator
public class JSONValidator implements ConstraintValidator<BeJSON, CharSequence> {

错误

but does not contain a groups parameter
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值