SpringBoot非官方教程 | 第十九篇: 验证表单信息
来源:互联网 发布:chunglim淘宝 编辑:程序博客网 时间:2024/06/15 21:36
转载请标明出处:
http://blog.csdn.net/forezp/article/details/71023817
本文出自方志朋的博客
这篇文篇主要简述如何在springboot中验证表单信息。在springmvc工程中,需要检查表单信息,表单信息验证主要通过注解的形式。
构建工程
创建一个springboot工程,由于用到了 web 、thymeleaf、validator、el,引入相应的起步依赖和依赖,代码清单如下:
org.springframework.boot spring-boot-starter-web org.springframework.boot spring-boot-starter-test test org.springframework.boot spring-boot-starter-thymeleaf org.hibernate hibernate-validator org.apache.tomcat.embed tomcat-embed-el
创建一个PresonForm的Object类
package com.forezp.entity;import javax.validation.constraints.Min;import javax.validation.constraints.NotNull;import javax.validation.constraints.Size;/** * Created by fangzhipeng on 2017/4/19. */public class PersonForm { @NotNull @Size(min=2, max=30) private String name; @NotNull @Min(18) private Integer age; public String getName() { return this.name; } public void setName(String name) { this.name = name; } public Integer getAge() { return age; } public void setAge(Integer age) { this.age = age; } public String toString() { return "Person(Name: " + this.name + ", Age: " + this.age + ")"; }}
这个实体类,在2个属性:name,age.它们各自有验证的注解:
- @Size(min=2, max=30) name的长度为2-30个字符
- @NotNull 不为空
- @Min(18)age不能小于18
创建 web Controller
@Controllerpublic class WebController extends WebMvcConfigurerAdapter { @Override public void addViewControllers(ViewControllerRegistry registry) { registry.addViewController("/results").setViewName("results"); } @GetMapping("/") public String showForm(PersonForm personForm) { return "form"; } @PostMapping("/") public String checkPersonInfo(@Valid PersonForm personForm, BindingResult bindingResult) { if (bindingResult.hasErrors()) { return "form"; } return "redirect:/results"; }}
创建form表单
src/main/resources/templates/form.html:
Name: Name Error Age: Age Error Submit
注册成功的页面
src/main/resources/templates/results.html:
html> Congratulations! You are old enough to sign up for this site.
演示
启动工程,访问http://localhost:8080/:
如果你输入A和15,点击 submit:
如果name 输入N, age为空:
如果输入:forezp. 18
参考资料
https://spring.io/guides/gs/validating-form-input/
源码下载
https://github.com/forezp/SpringBootLearning
优秀文章推荐:
- 更多springboot 教程:springBoot非官方教程 | 文章汇总
- 更多springcoud 教程:史上最简单的 SpringCloud 教程 | 文章汇总
0 0
- SpringBoot非官方教程 | 第十九篇: 验证表单信息
- SpringBoot非官方教程 | 第十九篇: 验证表单信息
- SpringBoot非官方教程 | 第十九篇: 验证表单信息
- SpringBoot非官方教程 | 第十九篇: 验证表单信息
- SpringBoot非官方教程 | 第二十篇: 处理表单提交
- SpringBoot非官方教程 | 第二十篇: 处理表单提交
- SpringBoot非官方教程 | 第二十篇: 处理表单提交
- SpringBoot非官方教程 | 第二十篇: 处理表单提交
- SpringBoot非官方教程 | 第十七篇:上传文件
- SpringBoot非官方教程 | 第二十三篇: 异步方法
- SpringBoot非官方教程 | 第十七篇:上传文件
- SpringBoot非官方教程 | 第二十三篇: 异步方法
- SpringBoot非官方教程 | 第十七篇:上传文件
- SpringBoot非官方教程 | 第二十三篇: 异步方法
- SpringBoot非官方教程 | 第十七篇:上传文件
- SpringBoot非官方教程 | 第二十三篇: 异步方法
- SpringBoot非官方教程 | 第二十五篇:2小时学会springboot
- SpringBoot非官方教程 | 第三篇:SpringBoot用JdbcTemplates访问Mysql
- maven 项目的pom.xml第一行报错
- CF
- C++抽象编程——面向对象(5)——最终版的point文件
- SpringBoot非官方教程 | 第十八篇: 定时任务(Scheduling Tasks)
- 马尔科夫链算法的JAVA实现
- SpringBoot非官方教程 | 第十九篇: 验证表单信息
- codeforces round #408 C. Bank Hacking
- python opencv —— io(帧、图像、视频的读取与保存)
- Windows CMD命令大全
- linux环境搭建
- 循环语句 一维数组
- FLV文件格式解析
- Ubuntu下MySQL5.5编码设置
- 坐高铁的那些事儿