ruoyi-vue前后端中的参数验证以及自定义[参数验证的]注解,触发验证抛出异常报错

学习目的:

掌握ruoyi-vue的参数验证基础流程以及自定义[参数验证的]注解,触发验证抛出异常报错


目录

学习目的:

ruoyi-vue前后端中的参数验证

1.打开通知公告,进入公告修改界面

2.ruoyi前端:

3.ruoyi后端:

ruoyi自定义[参数验证的]注解,触发验证抛出异常报错

需求分析:

总结:


ruoyi-vue前后端中的参数验证

1.打开通知公告,进入公告修改界面

在公告标题里输入超过50的字符,看看会发生什么

可以看到弹出了错误提示框

那么在以前想要实现这样的功能,一般就是在前端进行参数校验就结束了。那么ruoyi是如何实现参数校验的呢?

2.ruoyi前端:

可以看到ruoyi前端的表单校验只是简单的进行了是否为空。

是否为空校验完后,则会请求后端接口

返回结果可以通过开发者工具进行查看

在request.js 文件中 设置了响应拦截器 当传回的是code=500 则会跳出报错框

3.ruoyi后端:

后端接收前端的接口,用于参数校验的核心注解就是@Validated

使用@Validated 注解

需要确定对哪个参数的get方法进行参数校验,就i需要使用@size @notBlank 等注解明确校验的格式

ruoyi又是怎么处理参数异常的呢

当noticetitle属性不满足要求时,会抛出如下异常

ruoyi又是怎样处理参数异常

globalExceptionHandler 全局异常处理 @RestControllerAdvice 注册全局异常处理类

这样就是全部的处理参数验证的流程。


ruoyi自定义[参数验证的]注解,触发验证抛出异常报错

需求分析:

同样是在修改公告这里,我现在的需求是  如果内容中出现 一串完整的手机号  那么就触发参数验证抛出异常报错。

开始实现

在ruoyi.common下创建文件夹phone

创建一个自定义注解

他的验证适配器,表达一旦匹配到一串完整的手机号 就验证失败。

给内容的getter方法添加自定义的注解

验证:

可以看到当我们的内容中出现一串手机号以后,就会触发参数验证的报错。


总结:

摘要:Ruoyi-vue框架通过前后端协作实现参数验证。前端进行基础非空校验,后端使用@Validated注解配合@Size、@NotBlank等规则进行验证。当参数不合法时,GlobalExceptionHandler全局异常处理器会捕获并返回错误。文章还演示了如何自定义验证注解,实现"内容含手机号时触发异常"的需求:创建@Phone注解及其验证器,在getter方法上添加该注解即可完成特殊业务校验。整个流程展示了Ruoyi灵活的参数验证机制,从前端拦截到后端处理再到自定义扩展的完整实现方案。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值