SpringBoot之校验前端参数

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/chen18677338530/article/details/90717081

数据校验

对前端发送的数据进行合法性验证,防止不合理数据写入数据库中。

修改要验证的实体类

package com.chen.springbootweb.entity;

import lombok.Data;
import lombok.Getter;
import lombok.Setter;
import org.hibernate.validator.constraints.Length;

import javax.validation.constraints.Max;
import javax.validation.constraints.Min;
import javax.validation.constraints.NotEmpty;

@Setter
@Getter
public class User {

    @NotEmpty(message = "姓名不能为空!")
    private String name;

    @Max(value = 100,message = "年龄不能超过100岁!")
    @Min(value = 18,message = "必须年满18岁!")
    private int age;

    @NotEmpty(message = "密码不能为空!")
    @Length(min = 6,max = 30,message = "密码长度不能小于6位,长度不能超过30位!")
    private String password;
}

在controller中新增要验证的方法

在UserController中新增方法

    @PostMapping("/saveUser")
    public void saveUser(@Valid User user, BindingResult result){
        System.out.println("user"+ user) ;
        if (result.hasErrors()){
            List<ObjectError> list = result.getAllErrors();
            for (ObjectError error:list){
                System.out.println(error.getCode()+"-"+error.getDefaultMessage());
            }
        }
    }

运行结果:
在这里插入图片描述

常用的注解

在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/chen18677338530/article/details/90717081