首页 > 其他分享 >Spring中入参的校验方式

Spring中入参的校验方式

时间:2024-04-17 20:13:49浏览次数:21  
标签:中入 请求 Spring 校验 Controller 注解 类中

在项目中,

一般对于入参的校验,我们都是放在Controller层,之前是通过if语句进行空判断,但每次都这样写比较麻烦,代码写出来也不优雅。

比较幸运的是Spring框架中已经给我们提供了这样的注解,我们只要添加上相应的注解,就可以进行参数的检验,而不需要写if条件语句判断了。

具体的使用方法,也非常简单:

1、Controller控制类中POST请求,请求体参数的校验

1)如果Controller控制类中,需要检验的方法为POST请求,并且有请求体对象(即有@RequestBody注解),我们只需要在请求对象前面添加@Validated这个注解即可;

2)然后,再到这个请求的对象中的每个参数中,添加上比如不为Null的注解:@NotNull,或者不为空的注解:@NotBlank

 

2、Controller控制类中方法的请求方法为get时,我们就需要在类上面增加@Validated注解;

然后,在get请求方法的请求参数前面增加不为Null或者不为空的注解等。

标签:中入,请求,Spring,校验,Controller,注解,类中
From: https://www.cnblogs.com/heyi-77/p/18141645

相关文章

  • mybatis-plus分页插件使用(springboot)
    1、添加依赖、、、2、自定义一个配置类importcom.baomidou.mybatisplus.annotation.DbType;importcom.baomidou.mybatisplus.extension.plugins.MybatisPlusInterceptor;importcom.baomidou.mybatisplus.extension.plugins.inner.PaginationInnerInterceptor;importorg.sp......
  • SpringBoot项目 file not present 终局!
    在写一个文件上传接口时,从一个老项目里copy出来了一个接口,死活报错filenotpresent,参考如下步骤排查确保请求的httpheader里面的文件字段名和接口定义一致如果使用postman,则确定key和接口保持一致在保证一切都是对的情况下,检查下项目是否配置了CommonsMultipartResolv......
  • Spring Boot Validation统一参数校验
    实现方式  使用 @Validated注解配合参数校验注解,比如:@NotEmpty对参数进行校验。然后对抛出的异常ControllerAdvice进行捕获然后调整输出数据。1、引入依赖<dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-validati......
  • Spring API DOC未授权访问/SpringBoot Actuator 未授权访问测试方法
    插件安装需要先安装并配置java环境,然后在burpsuite中安装apikit插件 工具扫描1)在BurpSuite中抓取请求:你将在BurpSuite中的`Proxy`标签的`HTTPhistory`中看到所有通过代理发送的请求。2)使用APIkit进行测试:在BurpSuite中,发送想要测试的请求选择**DoAutoAPIscan**来发......
  • 微服务Spring Cloud17_微服务场景模拟4
    首先,我们需要模拟一个服务调用的场景。方便后面学习微服务架构 一、创建父工程微服务中需要同时创建多个项目,为了方便课堂演示,先创建一个父工程,然后后续的工程都以这个工程为父,实现maven的聚合。这样可以在一个窗口看到所有工程,方便讲解。在实际开发中,每个微服务可独立一个......
  • 基于K8s+Docker+Openresty+Lua+SpringCloudAlibaba的高并发秒杀系统——与京东淘宝同
    ​介绍基于K8s+Docker+Openresty+Lua+SpringCloudAlibaba的高并发高性能商品秒杀系统,本系统实测单台(16核32G主频2.2GHz)openresty(nginx)的QPS可高达6w并发,如果您需要应对100w的并发,则需要100w/6w=17台openresty服务器,17台服务器同时接收并处理这100w的并发流量呢?当然是商业......
  • springboot集成spark大数据
    1、特别申明,请注意JDK版本,最好用JDK1.8,用JDK17会导致很多报错2、导入pom依赖JDK1.8直接导入spark依赖就行。<dependency><groupId>org.apache.spark</groupId><artifactId>spark-sql_2.13</artifactId><version>3.4.1......
  • springboot多模块项目启动经历
    springboot多模块使用@目录springboot多模块使用前言大佬把项目权限给我了,我就先下下来看看学习一下一、识别二、maven配置1.安装maven三、加载刷新总结前言大佬把项目权限给我了,我就先下下来看看学习一下一、识别项目分为母模块和多个子模块,开始idea只是识别了最外层的pom......
  • 基于SpringWeb MultipartFile文件上传、下载功能
    在Web开发中,文件上传是一个常见的功能需求。Spring框架提供了MultipartFile接口,用于处理文件上传请求。MultipartFile可以代表一个多部分文件上传请求中的一个文件,提供了一系列方法用于获取文件的各种属性和内容,使得在后端处理文件上传变得十分方便。下面我们将介绍MultipartFile......
  • IDEA2023版本创建Spring项目只能勾选17和21却无法使用Java8的完美解决方案
    参考:https://www.jb51.net/program/308256k4b.htm方案一:替换创建项目的源我们只知道IDEA页面创建Spring项目,其实是访问springinitializr去创建项目。故我们可以通过阿里云国服去间接创建Spring项目。将https://start.spring.io/或者http://start.springboot.io/替换为https://......