学习springBoot(七,进阶篇)

前言:主要学习web的内容,这次主要学习表单验证

一、首先将我们之前写好的代码整理一下,如下图所示:

这样按类分好比较方便我们后续代码的编写。

这里我们做一个限制,未满18周岁的女生禁止进入我们的数据库!

首先找到GirlController中的添加女生的接口代码的地方:

  /**
     * 新增一个女生  POST方式
     */
    @PostMapping(value = "/girls")
    public Girl girlAdd(Girl girl){
        girl.setCupSize(girl.getCupSize());
        girl.setAge(girl.getAge());
        return girlRepository.save(girl);
    }

这里我们不再是分别传参,而是定义一个Girl实体对象,然后调用她的属性参数来传参。

我们的目的是禁止年龄小于18岁的女生进入数据库,所以我们在实体Girl中添加一个注解限制如下:

  @Min(value = 18,message = "未成年禁止入内!")
    private Integer age;

意思是最小年龄限制是18岁,如果不符合会报未成年禁止入内的错!

然后在GirlController里面添加女生的接口部分这样改正:

 /**
     * 新增一个女生  POST方式
     */
    @PostMapping(value = "/girls")
    public Girl girlAdd(@Valid Girl girl, BindingResult bindingResult){
        if (bindingResult.hasErrors()){
            System.out.println(bindingResult.getFieldError().getDefaultMessage());
            return null;
        }
        girl.setCupSize(girl.getCupSize());
        girl.setAge(girl.getAge());
        return girlRepository.save(girl);
    }

可以看到,我们在Girl实体前面加了一个@Valid验证,并且返回一个BindingResult对象,如果对象有错误,则说明不符合添加条件,return一下停止程序进行并且打印错误。下面我们运行一下程序进行测试!!!

这里我们添加一个13岁的女生,发现body部分并没有反应,然后我们进如程序控制台查看一下:

说明我们的代码没有问题,已经拦截了小于18岁的女生!!!

也说明我们的表单验证功能已经成功!

猜你喜欢

转载自blog.csdn.net/MagicMHD/article/details/82378237