springmvc的验证器数据校验的实现示例代码

  

  

这个比较好理解,就是用来验证客户输入的数据是否合法,比如客户登录时,用户名不能为空,或者不能超出指定长度等要求,这就叫做数据校验。

  

数据校验分为客户端校验和服务端校验

  

客户端校验:js校验

  

服务端校验:springmvc使用验证校验,struts2使用验证校验。都有自己的一套校验规则。

  

  

Springmvc本身没有校验功能,它使用hibernate的校验框架,hibernate的校验框架和orm没有关系

  

<强> 2.1,添加jar包

  

 springmvc的验证器数据校验的实现示例代码

  

<强> 2.2,在springmvc.xml中配置验证器校验器,基本上直接复制拿过去用即可。

  

配置以下这些,相当于有人帮我们写好了校验代码,我们拿过来直接用就行了,所以需要进行配置。

  

 springmvc的验证器数据校验的实现示例代码

  

将验证器注册到适配器中

  

<强>方式一(推荐)

  

 springmvc的验证器数据校验的实现示例代码

  

<强>方式二:如果配置文件中使用的是非注解方式编写的适配器,则这样配置

  

 springmvc的验证器数据校验的实现示例代码

        & lt; !——校验器,配置验证器——比;   & lt; bean id=把橹て鳌崩?皁rg.springframework.validation.beanvalidation.LocalValidatorFactoryBean”比;   & lt;属性名=" providerClass " value=" https://www.yisu.com/zixun/org.hibernate.validator.HibernateValidator "祝辞& lt;/property>   & lt;属性名=" validationMessageSource“ref=皏alidationMessageSource祝辞& lt;/property>   & lt;/bean>      & lt; !——配置validationMessageSource——比;   & lt; bean id=皏alidationMessageSource”类=皁rg.springframework.context.support.ReloadableResourceBundleMessageSource”比;   & lt; !——指定校验信息的资源文件的基本文件名称,不包括后缀,后缀默认是属性——比;   & lt;属性名=":"在   & lt; list>   & lt; value>类路径:validationMessageSource   & lt;/list>   & lt;/property>   & lt; !——指定文件的编码——比;   & lt;属性名=" fileEncodings " value=" https://www.yisu.com/zixun/utf8 "祝辞& lt;/property>   & lt; !——对资源文件内容缓存的时间,单位秒——比;   & lt;属性名=" cacheSeconds " value=" https://www.yisu.com/zixun/120 "祝辞& lt;/property>   & lt;/bean>      

<强> 2.3,validationMessageSource.properties

  

该配置文件的作用就是存储校验失败时的提示文字信息的,也就是相当于将其提取出来放到配置文件中,

  

 springmvc的验证器数据校验的实现示例代码

  

<强> 2.4,在pojo中指定校验规则

  

列举两个校验规则(使用的是注解校验),notnull和大小

  

 springmvc的验证器数据校验的实现示例代码

  

1, items.name.size和items.createtime.notnull:就是读取validationMessageSource.properties中的配置信息。从这里就可以理解该配置文件的意义,防止硬编码。

  

2,使用注解对需要进行校验的属性进行绑定,而能够使这些注解生效的前提就是配置此前的几个步骤,2.1,2.2,2.3都必不可少

  

其他校验规则摘抄自网上

  

 springmvc的验证器数据校验的实现示例代码

  

 springmvc的验证器数据校验的实现示例代码

  

<强> 2.5,控制器中对其校验绑定进行使用

  

 springmvc的验证器数据校验的实现示例代码

  

1, @Validated作用就是将pojo内的注解数据校验规则(@NotNull等)生效,如果没有该注解的声明,pojo内有注解数据校验规则也不会生效

  

2, BindingResult对象用来获取校验失败的信息(@NotNull中的消息),与@Validated注解必须配对使用,一前一后

springmvc的验证器数据校验的实现示例代码