SpringBoot服务端表单数据校验

一、实现用户添加功能
1、创建maven项目
SpringBoot服务端表单数据校验

2、添加pom依赖
SpringBoot服务端表单数据校验

3、编写添加用户功能创建实体类
public class User {
private String name;
private String password;
private Integer age;
private String email;

public String getEmail() {
    return email;
}

public void setEmail(String email) {
    this.email = email;
}

public String getName() {
    return name;
}

public void setName(String name) {
    this.name = name;
}

public String getPassword() {
    return password;
}

public void setPassword(String password) {
    this.password = password;
}

public Integer getAge() {
    return age;
}

public void setAge(Integer age) {
    this.age = age;
}

@Override
public String toString() {
    final StringBuffer sb = new StringBuffer("User{");
    sb.append("name='").append(name).append('\'');
    sb.append(", password='").append(password).append('\'');
    sb.append(", age=").append(age);
    sb.append(", eamil='").append(email).append('\'');
    sb.append('}');
    return sb.toString();
}

}

3.1、编写 Controller
SpringBoot服务端表单数据校验

3.2、编写页面 add.html和ok.html,注意:这里飘红是没有引入thymeleaf的提示,引入就不在飘红
SpringBoot服务端表单数据校验
SpringBoot服务端表单数据校验

二、SpringBoot 对表单做数据校验
1、SpringBoot 对表单数据校验的技术特点
1.1、SpringBoot 中使用了 Hibernate-validate 校验框架(已经过期)
SpringBoot服务端表单数据校验
2、SpringBoot 表单数据校验步骤
2.1、在实体类中添加校验规则
public class User {
@NotBlank(message = “用户名不能为空”) //非空校验
@Length(min = 2,max = 6,message = “最小长度为2位,最大长度为6位”)
private String name;
@NotEmpty
private String password;
@Min(value = 15)
@Max(value = 30)
private Integer age;
@Email
private String email;

public String getEmail() {
    return email;
}

public void setEmail(String email) {
    this.email = email;
}

public String getName() {
    return name;
}

public void setName(String name) {
    this.name = name;
}

public String getPassword() {
    return password;
}

public void setPassword(String password) {
    this.password = password;
}

public Integer getAge() {
    return age;
}

public void setAge(Integer age) {
    this.age = age;
}

@Override
public String toString() {
    final StringBuffer sb = new StringBuffer("User{");
    sb.append("name='").append(name).append('\'');
    sb.append(", password='").append(password).append('\'');
    sb.append(", age=").append(age);
    sb.append(", eamil='").append(email).append('\'');
    sb.append('}');
    return sb.toString();
}

}

2.2、在Controller 中开启校验
SpringBoot服务端表单数据校验

2.3、在页面中获取提示信息,这里设置了别名
SpringBoot服务端表单数据校验

2.4、遇到异常
忘记截图了,emmmm

三、解决数据校验时的异常问题
SpringBoot服务端表单数据校验

四、其他校验规则
@NotBlank: 判断字符串是否为 null 或者是空串(去掉首尾空格)。
@NotEmpty: 判断字符串是否 null 或者是空串。
@Length: 判断字符的长度(最大或者最小)
@Min: 判断数值最小值
@Max: 判断数值最大值
@Email: 判断邮箱是否合法