SpringMVC--服务器表单校验

简介: SpringMVC--服务器表单校验

为什么后端要做表单的校验

如果只使用前端校验的话,如果浏览器把JS给禁用掉,就弯度子啦

JSR

  • JSR 303 是 Java 为 Bean 数据合法性校验提供的标准框架,它已经包含在 JavaEE 6.0 中
  • JSR 303 通过在 Bean 属性上标注类似于 @NotNull、@Max 等标准的注解
  • 指定校验规则,并通过标准的验证接口对 Bean 进行验证

HibernateValidator

  • 是 JSR 303 的一个参考实现,除支持所有标准的校验注解外,它还支持以下的扩展注解

常用校验规则

BeanValidation中内置的约束

注解名称 描述
@Null 被注释的元素必须为 null
@NotNull 被注释的元素必须不为 null
@AssertTrue 被注释的元素必须为 true
@AssertFalse 被注释的元素必须为 false
@Min(value) 被注释的元素必须是一个数字,其值必须大于等于指定的最小值
@Max(value) 被注释的元素必须是一个数字,其值必须小于等于指定的最大值
@DecimalMin(value) 被注释的元素必须是一个数字,其值必须大于等于指定的最小值
@DecimalMax(value) 被注释的元素必须是一个数字,其值必须小于等于指定的最大值
@Size(max=, min=) 被注释的元素的大小必须在指定的范围内
@Digits (integer, fraction) 被注释的元素必须是一个数字,其值必须在可接受的范围内
@Past 被注释的元素必须是一个过去的日期
@Future 被注释的元素必须是一个将来的日期
@Pattern(regex=,flag=) 被注释的元素必须符合指定的正则表达式

HibernateValidator附加的约束

注解名称 描述
@NotBlank(message =) 验证字符串非null,且长度必须大于0
@Email 被注释的元素必须是电子邮箱地址
@Length(min=,max=) 被注释的字符串的大小必须在指定的范围内
@NotEmpty 被注释的字符串的必须非空
@Range(min=,max=,message=) 被注释的元素必须在合适的范围内

使用Hibernate-Validator导入jar包

使用

在配置文件当中写上 <mvc:annotation-driven/>,在模型当中添加对应的校验规则

在处理器方法的入参标记 @valid 注解即可

错误信息页面回显,使用原始表单错误信息写到 Model 中


使用 form 标签

<fm:error path="username"></fm:error>
相关文章
|
2月前
|
弹性计算 分布式计算 容灾
ECS实例问题之一直校验失败如何解决
ECS(Elastic Compute Service,弹性计算服务)是云计算服务提供商提供的一种基础云服务,允许用户在云端获取和配置虚拟服务器。以下是ECS服务使用中的一些常见问题及其解答的合集:
|
10月前
|
弹性计算 Linux DataWorks
阿里云ecs搭建简易ftp服务器-用于DataWorks文件存储及依赖校验
很多企业客户在使用阿里云产品时,经常需要与FTP服务器进行文件交互,诸如跨IDC任务done文件依赖,跨账号、部门临时数据交互等场景。这里简要记录阿里云ecs搭建简易ftp服务器用于上述场景答疑的过程。
HTTP状态 500 - 内部服务器错误,Servlet[SpringMVC]的Servlet.init()引发异常
HTTP状态 500 - 内部服务器错误,Servlet[SpringMVC]的Servlet.init()引发异常
63 0
HTTP状态 500 - 内部服务器错误,Servlet[SpringMVC]的Servlet.init()引发异常
|
前端开发
使用SpringMvc跨服务器上传图片,Ajax异步刷新图片框显示图片功能请求不到后台,onChange事件没有激活的源码?
使用SpringMvc跨服务器上传图片,Ajax异步刷新图片框显示图片功能请求不到后台,onChange事件没有激活的源码?
82 0
使用SpringMvc跨服务器上传图片,Ajax异步刷新图片框显示图片功能请求不到后台,onChange事件没有激活的源码?
|
Java 应用服务中间件
SpringMVC实现文件上传【传统方式上传、跨服务器上传】
SpringMVC实现文件上传【传统方式上传、跨服务器上传】
SpringMVC实现文件上传【传统方式上传、跨服务器上传】
|
缓存 JavaScript 前端开发
给注册添加服务器端表单校验 | 学习笔记
快速学习给注册添加服务器端表单校验
给注册添加服务器端表单校验 | 学习笔记
|
前端开发 JavaScript Java
SpringMVC教程4[服务器端校验]
SpringMVC教程4[服务器端校验]
SpringMVC教程4[服务器端校验]
|
Java 应用服务中间件 存储
17、【 商品管理模块开发】——后台商品图片的springmvc和富文本上传以及ftp文件服务器的开发
1、FTP文件服务器的搭建: 软件下载:ftpserver; image.png 浏览器访问:ftp://127.0.0.1/ image.
1565 0
|
前端开发 JavaScript Java
html2canvas+jQuery+SpringMVC 实现网页转图片并保存到服务器
前端使用的是 RequireJS + jQuery 后端使用的是 SpringMVC + MyBatis 涉及资料 html2canvas 官网 将转换后的图片存储服务器的参考 将网页转换为图片 下载插件包 html2canvas 目前最新版是 v-1.
3146 0
|
前端开发 Java 数据格式
Spring MVC 使用 Jetty 作为内嵌服务器
Jetty 是高性能的 Servlet 容器,经常会在开发环境中作为服务器来使用。在本文中,我们将使用 Spring Web MVC 技术来实现 REST 接口,并使用 使用 Jetty 作为内嵌服务器,方便测试。
13355 0

热门文章

最新文章