参数验证以及自定义参数验证注解,触发验证抛出异常报错

本文详细介绍了如何在ruoyi管理系统中,通过自定义参数验证注解进行字典类型输入验证,包括前端和后端代码分析,以及MyValidator类的实现。方法参数上添加该注解可触发验证并捕获异常。

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

1、触发验证及前后端现象

        首先运行ruoyi管理系统,按下图步骤进行操作

对字典类型进行新增操作,当我们输入字典类型时,当字典类型输入“12”时,我们发现页面弹出一个警告框。

MethodArgumentNotValidException为异常类型

2、代码分析

        2.1、前端代码分析

        2.2、后端代码分析

3、自定义参数验证注解

自定义参数验证注解可以用于在方法参数上添加特定的验证规则,当参数不满足规则时,抛出异常报错。

下面是一个自定义参数验证注解的示例:

注解@Target(ElementType.PARAMETER)表示该注解可以在方法参数上使用。

注解@Constraint(validatedBy = MyValidator.class)表示该注解会使用MyValidator类进行验证。

接下来,我们需要实现MyValidator类:

MyValidator类实现了ConstraintValidator<MyValidation, Object>接口,并重写了其中的两个方法。

initialize方法用于初始化验证器。

isValid方法用于执行验证逻辑。在该方法中,我们可以根据需要对参数进行验证。如果验证通过,返回true;否则返回false。

最后,我们可以在方法参数上使用自定义的参数验证注解:

在上述示例中,myMethod方法的parameter参数上添加了@MyValidation注解。当调用该方法时,会自动触发参数验证,并在验证失败时抛出异常报错。

至此,我们实现了一个自定义参数验证注解,并通过在方法参数上添加该注解来触发参数验证并抛出异常报错。

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值