博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
SpringBoot 表单验证
阅读量:2491 次
发布时间:2019-05-11

本文共 2387 字,大约阅读时间需要 7 分钟。

拦截所有年龄<18岁的用户

1、实体层定义限制

package cn.edu.shu.ces_chenjie.pojo;import javax.persistence.Entity;import javax.persistence.GeneratedValue;import javax.persistence.Id;import javax.validation.constraints.Min;@Entitypublic class Person {    @Id    @GeneratedValue    private Integer id;    @Min(value = 18,message = "未满18岁禁止访问")    private Integer age;    private String name;    public Person() {    }    public Integer getId() {        return id;    }    public void setId(Integer id) {        this.id = id;    }    public Integer getAge() {        return age;    }    public void setAge(Integer age) {        this.age = age;    }    public String getName() {        return name;    }    public void setName(String name) {        this.name = name;    }    @Override    public String toString() {        return "Person{" +                "id=" + id +                ", age=" + age +                ", name='" + name + '\'' +                '}';    }}

2、Controller层使用Valid进行参数验证,

package cn.edu.shu.ces_chenjie.controller;import cn.edu.shu.ces_chenjie.pojo.Person;import cn.edu.shu.ces_chenjie.repository.PersonRepository;import cn.edu.shu.ces_chenjie.service.PersonService;import org.springframework.beans.factory.annotation.Autowired;import org.springframework.validation.BindingResult;import org.springframework.web.bind.annotation.*;import javax.validation.Valid;import java.util.List;@RestControllerpublic class PersonController {    @Autowired    private PersonRepository repository;    @Autowired    private PersonService personService;    @GetMapping("/persons")    public List
personList(){ return repository.findAll(); } //使用@Valid进行验证,验证结果放在BindingResult里面 @PostMapping("/persons") public String personAdd(@Valid Person person,BindingResult bindingResult){ if(bindingResult.hasErrors()){ System.out.println(bindingResult.getFieldError().getDefaultMessage()); return bindingResult.getFieldError().getDefaultMessage(); } person.setAge(person.getAge()); person.setName(person.getName()); return repository.save(person).toString(); } @GetMapping("persons/{name}") public List
personListByName(@PathVariable("name")String name){ return repository.findByName(name); } @PostMapping("persons/two") public void personTwo(){ personService.insertTwo(); }}
3、测试

你可能感兴趣的文章
SQL Server代理的阶梯 - 第2级:作业步骤和子系列
查看>>
jsoup测试例子
查看>>
Datatable/Dataset 转 JSON方法
查看>>
微信公众平台开发接口PHP SDK完整版
查看>>
tiny4412--linux驱动学习(2)
查看>>
MySQL的安装及使用教程
查看>>
iOS开发UI篇—使用xib自定义UItableviewcell实现一个简单的团购应用界面布局
查看>>
KMP算法
查看>>
mutli-lane情况
查看>>
有意思的故事
查看>>
10.27 noip模拟试题
查看>>
ubuntu16.04 安装 ipython
查看>>
利用原生js做数据管理平台
查看>>
绘制自定义键盘
查看>>
如何开始DDD(完)
查看>>
poj1969---找规律
查看>>
Linux 复习重点目录
查看>>
[svc]gns3模拟器及探讨几个bgp问题
查看>>
Error:fatal: Not a git repository (or any of the parent directories): .git
查看>>
韩顺平循序渐进学java 第13讲 抽象类.接口
查看>>