十一、Spring Boot 表单验证

(一)、Spring Boot 项目创建(实现数据插入)

参考:Spring Boot Mybatis 数据插入

(二)、添加依赖

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

(三)、数据验证

1.验证规则添加

  • @NotBlank:不为空

代码:

public class Users {

    private Integer id;
    @NotBlank
    private String name;
    private Integer age;

    @Override
    public String toString() {
        return "Users{" +
                "id=" + id +
                ", name='" + name + '\'' +
                ", age=" + age +
                '}';
    }

    public String getName() {
        return name;
    }

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

    public Integer getAge() {
        return age;
    }

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

    public Integer getId() {
        return id;
    }

    public void setId(Integer id) {
        this.id = id;
    }
}

2.controller修改

  • @Validated:对该数据进行验证;’
  • BindingResult:验证结果,result.hasErrors()为 true 表示验证没有通过;
  • @ModelAttribute:验证结果返回前端的对象名称,默认是验证变量名称的驼峰形式,通过注解@ModelAttribute自定义验证结果返回前端的对象名称。
@Controller
public class UserController {

    @GetMapping("/addUser")
    public String addUser(@ModelAttribute("users") Users users) {
        return "addUser";
    }

    @PostMapping("/saveUser")
    public String saveUser(@ModelAttribute("users") @Validated Users users, BindingResult result){
        if (result.hasErrors()) {
            return "addUser";
        }
        System.out.println("添加用户成功:" + users.toString());
        return "ok";
    }
}

3.表单创建

  • th:errors,后台传递对象,表单验证结果显示;
  • users.name:验证结果。
<form action="/saveUser" method="post">
  用户名:<input type="text" name="name" ><span style="color: red"  th:errors="${users.name}"></span><br>
  密码:  <input type="text" name="age"><span style="color: red" th:errors="${users.age}"></span><br>
    <input type="submit" value="添加">
</form>

(四)、常用校验规则

1.@NotBlank

字符串不能为null或是空串(去掉首尾)

2.@NotEmpty

字符串不能为null或空串

3.@Length

字符长度(最大或最小)

4.@Min

数值最小值

5.@Max

数值最大值

6.@Email

电子邮箱是否合法

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值