springboot使用Validator校验

简介: 我相信每个做开发的都听过这句“永远不要相信用户的输入”,因此后台需要对用户的每个输入项都做校验:手机号、用户名、密码、邮箱、身份证号······这时候就需要hibernate-Validator校验框架登场了,下面介绍springboot如何使用hibernate-Validator进行校验。

我相信每个做开发的都听过这句“永远不要相信用户的输入”,因此后台需要对用户的每个输入项都做校验:手机号、用户名、密码、邮箱、身份证号······这时候就需要hibernate-Validator校验框架登场了,下面介绍springboot如何使用hibernate-Validator进行校验。

引入pom

WAIT ~~~


img_454e33b8fba2c3595ae34b4de4511546.png
starter-web的依赖

惊不惊喜,意不意外?springboot已帮我们集成了,我们只管拿!来!用!

添加注解


    @NotBlank(message = "用户名不能为空")
    private String username;

    @DecimalMin(value = "6", message = "密码长度不能少于6个字符")
    @DecimalMax(value = "20", message = "密码长度不能超过20个字符")
    private String password;

同时支持正则表达式

校验调用

  @ResponseBody
    @RequestMapping("save")
    public ResultModel<SysUser> save(@Valid SysUser sysUser, BindingResult result){
        if (result.hasErrors()){
            result.getAllErrors().forEach(error-> System.out.println(error.getDefaultMessage()));
        }
        return ResultModel.defaultSuccess(null);
    }

测试结果

1、发送请求


img_5de253e6ab0ebbfd4f34b1c4dc9e8588.png
发送请求.png

2、运行结果


img_90991221feb4046c1b29aa481b30eee7.png
运行结果.png
目录
相关文章
|
1月前
|
安全 前端开发 Java
Springboot中如何优雅的进行字段以及业务校验
Springboot中如何优雅的进行字段以及业务校验
|
4月前
|
Java Spring
SpringBoot - 优雅的实现【应用启动参数校验】
SpringBoot - 优雅的实现【应用启动参数校验】
61 0
|
2月前
|
Java 数据库 数据安全/隐私保护
【SpringBoot】Validator组件+自定义约束注解实现手机号码校验和密码格式限制
【SpringBoot】Validator组件+自定义约束注解实现手机号码校验和密码格式限制
141 1
|
8天前
|
前端开发 Java
SpringBoot之自定义注解参数校验
SpringBoot之自定义注解参数校验
19 2
|
8天前
|
存储 JSON 算法
SpringBoot之JWT令牌校验
SpringBoot之JWT令牌校验
16 2
|
25天前
|
JSON Java 数据格式
Spring Boot实现各种参数校验
这些是Spring Boot中实现参数校验的一些常见方法,你可以根据项目需求选择适合的方式来进行参数校验。
16 0
|
2月前
|
存储 NoSQL 前端开发
【SpringBoot】Redis集中管理Session和自定义用户参数解决登录状态及校验问题
【SpringBoot】Redis集中管理Session和自定义用户参数解决登录状态及校验问题
|
2月前
|
前端开发 Java Maven
spring boot3参数校验基本用法
spring boot3参数校验基本用法
56 2
|
4月前
|
Java 数据库连接 Spring
Springboot校验注解
Spring Boot 提供了一组基于 Hibernate Validator 的校验注解,用于验证请求参数、实体对象等数据的合法性。下面是一些常用的 Spring Boot 校验注解及其功能:
|
4月前
|
安全 Java 容器
SpringBoot - 优雅的实现【业务校验】高级进阶
SpringBoot - 优雅的实现【业务校验】高级进阶
86 0