Spring MVC中如何实现数据校验的最佳实践?

更新于
2026-10-12 12:34:13
2阅读来源:SEO资源
  • 内容介绍
  • 文章标签
  • 相关推荐

本文共计529个文字,预计阅读时间需要3分钟。

Spring MVC中如何实现数据校验的最佳实践?

服务器二次验证,在实体类中添加Spring MVC数据校验,需引入验证框架包,并在Spring配置文件中配置Spring MVC数据校验。配置如下:框架:配置: xmlns:mvc=http://www.springframework.org/schema/mvc

Spring MVC中如何实现数据校验的最佳实践?

服务器二次验证,在实体类中添加spring MVC数据校验,需要 导入验证架包,并且在spring配置文件中进行配置

Spring MVC数据校验 -->架包: -->配置 -->xmlns:mvc="www.springframework.org/schema/mvc" -->www.springframework.org/schema/mvc -->www.springframework.org/schema/aop/spring-mvc.xsd -->@Pattern(regexp) 正则匹配 -->@Length(min,max) 字符长度区间限制 -->@DecimalMin(value) 数据必须在指定值以上 -->@DecimalMax(value) 数据必须在指定值以下 -->@NotNull 不是空 -->@Null 是空 -->@NotEmpty 验证注解的元素值不为null且不为空(字符串长度不为0、集合大小不为0) -->@Range(min=最小值, max=最大值) -->@NotBlank 验证注解的元素值不为空(不为null、去除首位空格后长度为0),不同于@NotEmpty,@NotBlank只应用于字符串且在比较时会去除字符串的空格 -->@Email 验证注解的元素值是Email,也可以通过正则表达式和flag指定自定义的email格式 -->获取验证结果 -->index(@Valid User user,[BindingResult br,Errors er]){br.hasErrors()} -->在JSP页面显示错误信息 -->1.<%@ taglib prefix="form" uri="www.springframework.org/tags/form" %> -->2. -->3.如果需要使用JS验证,就需要写自定义标签了 代码片段: public class UserInfo{ private Integer id; @NotEmpty(message="姓名不能为空") @Length(min=6,max=10,message="用户名必须在6-10") private String name=null; @NotEmpty(message="密码不能为空") private String pwd; private Integer rolesid; private Roles rinfo; public Integer getId() { return id; } public void setId(Integer id) { this.id = id; } public String getName() { return name; } public void setName(String name) { this.name = name; } public String getPwd() { return pwd; } public void setPwd(String pwd) { this.pwd = pwd; } public Integer getRolesid() { return rolesid; } public void setRolesid(Integer rolesid) { this.rolesid = rolesid; } public Roles getRinfo() { return rinfo; } public void setRinfo(Roles rinfo) { this.rinfo = rinfo; } @Override public String toString() { return "UserInfo [id=" + id + ", name=" + name + ", pwd=" + pwd + ", rolesid=" + rolesid + ", rinfo=" + rinfo + "]"; } public UserInfo(Integer id, String name, String pwd, Integer rolesid, Roles rinfo) { super(); this.id = id; this.name = name; this.pwd = pwd; this.rolesid = rolesid; this.rinfo = rinfo; } public UserInfo(Integer id, String name, String pwd, Integer rolesid) { super(); this.id = id; this.name = name; this.pwd = pwd; this.rolesid = rolesid; } public UserInfo() { } } 验证架包.png

本文共计529个文字,预计阅读时间需要3分钟。

Spring MVC中如何实现数据校验的最佳实践?

服务器二次验证,在实体类中添加Spring MVC数据校验,需引入验证框架包,并在Spring配置文件中配置Spring MVC数据校验。配置如下:框架:配置: xmlns:mvc=http://www.springframework.org/schema/mvc

Spring MVC中如何实现数据校验的最佳实践?

服务器二次验证,在实体类中添加spring MVC数据校验,需要 导入验证架包,并且在spring配置文件中进行配置

Spring MVC数据校验 -->架包: -->配置 -->xmlns:mvc="www.springframework.org/schema/mvc" -->www.springframework.org/schema/mvc -->www.springframework.org/schema/aop/spring-mvc.xsd -->@Pattern(regexp) 正则匹配 -->@Length(min,max) 字符长度区间限制 -->@DecimalMin(value) 数据必须在指定值以上 -->@DecimalMax(value) 数据必须在指定值以下 -->@NotNull 不是空 -->@Null 是空 -->@NotEmpty 验证注解的元素值不为null且不为空(字符串长度不为0、集合大小不为0) -->@Range(min=最小值, max=最大值) -->@NotBlank 验证注解的元素值不为空(不为null、去除首位空格后长度为0),不同于@NotEmpty,@NotBlank只应用于字符串且在比较时会去除字符串的空格 -->@Email 验证注解的元素值是Email,也可以通过正则表达式和flag指定自定义的email格式 -->获取验证结果 -->index(@Valid User user,[BindingResult br,Errors er]){br.hasErrors()} -->在JSP页面显示错误信息 -->1.<%@ taglib prefix="form" uri="www.springframework.org/tags/form" %> -->2. -->3.如果需要使用JS验证,就需要写自定义标签了 代码片段: public class UserInfo{ private Integer id; @NotEmpty(message="姓名不能为空") @Length(min=6,max=10,message="用户名必须在6-10") private String name=null; @NotEmpty(message="密码不能为空") private String pwd; private Integer rolesid; private Roles rinfo; public Integer getId() { return id; } public void setId(Integer id) { this.id = id; } public String getName() { return name; } public void setName(String name) { this.name = name; } public String getPwd() { return pwd; } public void setPwd(String pwd) { this.pwd = pwd; } public Integer getRolesid() { return rolesid; } public void setRolesid(Integer rolesid) { this.rolesid = rolesid; } public Roles getRinfo() { return rinfo; } public void setRinfo(Roles rinfo) { this.rinfo = rinfo; } @Override public String toString() { return "UserInfo [id=" + id + ", name=" + name + ", pwd=" + pwd + ", rolesid=" + rolesid + ", rinfo=" + rinfo + "]"; } public UserInfo(Integer id, String name, String pwd, Integer rolesid, Roles rinfo) { super(); this.id = id; this.name = name; this.pwd = pwd; this.rolesid = rolesid; this.rinfo = rinfo; } public UserInfo(Integer id, String name, String pwd, Integer rolesid) { super(); this.id = id; this.name = name; this.pwd = pwd; this.rolesid = rolesid; } public UserInfo() { } } 验证架包.png