加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 大数据 > 正文

spring boot中表单验证的使用

发布时间:2020-12-15 01:10:35 所属栏目:大数据 来源:网络整理
导读:一、前言 为啥子要搞这个表单验证呢?答案简单而现实,举个栗子,你辛辛苦苦的写了一个录入个人信息的功能,比如年龄这个位置,用户就没看到一下子写了个性别男,一提交,直接报错了,是不是很尴尬呢, 作为一个测试的同学,我很想说的是,真的是用户的行为

一、前言

为啥子要搞这个表单验证呢?答案简单而现实,举个栗子,你辛辛苦苦的写了一个录入个人信息的功能,比如年龄这个位置,用户就没看到一下子写了个性别男,一提交,直接报错了,是不是很尴尬呢,

作为一个测试的同学,我很想说的是,真的是用户的行为是深不可测的,所以还是加吧。

二、模拟场景

记得我还是在上学那会,未满十八岁时不允许去网吧上网的,直到上大学,得用身份证,才让去,无奈呀,寝室的网太卡了~~~~~

那么现在我们就模拟年龄为18岁以上的同学,才能去网吧上网。下面我们将结合实例来说明表单的验证使用。

1、修改新增学生接口

将传字段值,改为传Student对象,示例代码如下:

/**
     * 新增一个学生
     *
     * @return
     */
    @PostMapping("/studentAdd")
    public Student sudentAdd(@Valid Student student,BindingResult bindingResult) {
        if(bindingResult.hasFieldErrors()){
            //输出错误信息
            System.out.println(bindingResult.getFieldError().getDefaultMessage());
            return null;
        }
        student.setName(student.getName());
        student.setAge(student.getAge());
        student.setSex(student.getSex());
        student.setEmail(student.getEmail());
        保存和更新都用该方法
        return studentResponstory.save(student);
    }

2、在实体对象上添加限制

使用@MIN来限制输入最小值,具体示例代码如下:

package com.rongrong.springboot.demo.domain;


import lombok.Data;

 javax.persistence.Entity;
 javax.persistence.GeneratedValue;
 javax.persistence.Id;
 javax.validation.constraints.Min;


 * @author rongrong
 * @version 1.0
 * @description:
 * @date 2019/12/30 21:24
 
@Entity
@Data
public class Student {

    主键ID
    @Id
    自增型
    @GeneratedValue
    private Integer id;
     String name;
    @Min(value = 18,message = "未满18岁,还没身份证,不能到网吧上网!" Integer age;
     String sex;
     String email;
     Student() {
    }
}

3、启动服务

调用接口,增加一个大于18岁的学生,结果如下:

?

?再来修改,修改年龄为2岁,再来调用接口,postman返回空,结果如下:

?

?我们再来看下控制台是否有提示:

?

?

到此,关于表单的验证,介绍完毕,有兴趣的同学可以自行尝试。

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读