zoukankan      html  css  js  c++  java
  • spring boot中表单验证的使用

    一、前言

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

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

    二、模拟场景

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

    那么现在我们就模拟年龄为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;
    
    import javax.persistence.Entity;
    import javax.persistence.GeneratedValue;
    import javax.persistence.Id;
    import 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;
        private String name;
        @Min(value = 18,message = "未满18岁,还没身份证,不能到网吧上网!")
        private Integer age;
        private String sex;
        private String email;
        public Student() {
        }
    }

    3、启动服务

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

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

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

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

  • 相关阅读:
    常用SQL语句大全总结
    修改 Mac 默认 PHP 运行环境
    mac下更新自带的PHP版本到5.6或7.0
    apache php 开启伪静态
    酒店迎接新技术变革:用智能手机开门
    百度地图显示多个标注点
    百度地图api简单使用方法
    Spring mvc 配置详解
    Spring MVC入门知识总结
    Bootstrap 按钮
  • 原文地址:https://www.cnblogs.com/longronglang/p/12142247.html
Copyright © 2011-2022 走看看