springboot 接口参数校验

本文介绍了如何在SpringBoot项目中通过pom.xml引入Maven坐标并使用@Validated注解进行参数验证。包括在控制器中启用验证、处理ConstrainViolationException、以及针对对象类型的实体类配置。还讨论了全局异常处理的实现。

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

pom.xml导入maven坐标

<dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-validation</artifactId>
    </dependency>

用法:

在controller层开启校验,在类上使用注解@Validated

验证参数长度大于3。在方法中参数上加上@Lenght(min=3)

用法:

@Validated

@RestController

Public class Student{

       @PostMapping(“/findall”)

       Public String findall ( @Lenght(min=3) String username ){

       return “”;

}

}

处理输入不符合条件报错问题:

定义一个全局异常处理类,用于处理controller层出现的异常

@ControllerAdvice

Public class ValidationController{

       @ResponseBody

       @ExceptionHandler(ConstrainViolationException.class)

       Public String error(ValidationException e){

              Return e.getMessage();

       }

}

如果接受的是对象类型,需要在实体类中进行配置

@Validated

@RestController

Public class Student{

       @PostMapping(“/findall”)

       Public String findall ( @Valid Student student ){

       return “”;

}

}

实体类

Public class Student{

       @Length(min=3)

       String username;

       String password;

}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值