日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 前端技术 > javascript >内容正文

javascript

Spring MVC 数据验证——validate注解方式

發布時間:2025/3/20 javascript 17 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Spring MVC 数据验证——validate注解方式 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

1、說明

學習注解方式之前,應該先學習一下編碼方式的spring注入。這樣便于理解驗證框架的工作原理。在出錯的時候,也能更好的解決這個問題。所以本次博客教程也是基于編碼方式。僅僅是在原來的基礎加上注解方式。

2、配置信息

  • web.xml不須要改變的
  • hello-servlet.xml將原來的載入方式,改為自己主動增加有hibernate和Spring提供的validate的默認類,配置例如以下:
<?xml version="1.0" encoding="UTF-8"?> <beans xmlns="http://www.springframework.org/schema/beans"xmlns:p="http://www.springframework.org/schema/p"xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"xmlns:mvc="http://www.springframework.org/schema/mvc"xmlns:aop="http://www.springframework.org/schema/aop"xmlns:context="http://www.springframework.org/schema/context"xsi:schemaLocation="http://www.springframework.org/schema/beanshttp://www.springframework.org/schema/beans/spring-beans-4.0.xsdhttp://www.springframework.org/schema/mvchttp://www.springframework.org/schema/mvc/spring-mvc-4.0.xsdhttp://www.springframework.org/schema/aop http://www.springframework.org/schema/aop/spring-aop-4.0.xsdhttp://www.springframework.org/schema/contexthttp://www.springframework.org/schema/context/spring-context.xsd"><context:component-scan base-package="controller"></context:component-scan> <bean class="org.springframework.web.servlet.mvc.annotation.AnnotationMethodHandlerAdapter" /> <bean class="org.springframework.web.servlet.view.InternalResourceViewResolver"p:prefix="/WEB-INF/jsp/" p:suffix=".jsp"><!-- <property name="viewClass" value="org.springframework.web.servlet.view.JstlView"></property> --></bean><!--基于validate的載入配置--><mvc:annotation-driven validator="validator"/><!-- <bean id="accountValidator" class="dao.AccountValidator"></bean> --><bean id= "validator"class= "org.springframework.validation.beanvalidation.LocalValidatorFactoryBean"><property name= "providerClass" value= "org.hibernate.validator.HibernateValidator"/><!-- 假設不加默認到 使用classpath下的 ValidationMessages.properties --><property name= "validationMessageSource" ref= "messageSource"/></bean> <bean id= "messageSource"class= "org.springframework.context.support.ReloadableResourceBundleMessageSource"><property name= "basename" value= "classpath:message"/><property name= "fileEncodings" value= "utf-8"/><property name= "cacheSeconds" value= "120"/></bean></beans>
  • 在src文件夾以下新建配置文件message.properties 給文件的載入是由hello-servlet.xml中的字段messageSource中的屬性basename的value值決定的。能夠不用配置這個文件,可是一般為了支持國際化,可是吧信息寫到配置文件里的,例如以下:
account.username.size=\u7528\u6237\u540D\u7684\u957F\u5EA6\u57283-20\u4E2A\u5B57\u7B26\u4E32\u4E4B\u95F4 account.username.space=\u7528\u6237\u540D\u5B57\u7B26\u4E32\u4E4B\u95F4\u4E0D\u80FD\u6709\u7A7A\u683C account.password.size=\u5BC6\u7801\u7684\u957F\u5EA6\u8303\u56F4\u57286-20\u4E2A\u5B57\u7B26\u4E32\u4E4B\u95F4

后面的亂碼都是轉義后生成的。相應的中文例如以下:

3、源碼
- 改動Account類,例如以下代碼:

package dao;import javax.validation.constraints.Pattern; import javax.validation.constraints.Size;public class Account {@Size(min=3,max=20,message="{account.username.size}")@Pattern(regexp="^[a-zA-Z0-9]+$",message="{account.username.space}")private String username;@Size(min=6,max=20,message="{account.password.size}")private String password;public Account() {// TODO Auto-generated constructor stub}public Account(String username, String password) {super();this.username = username;this.password = password;}public String getUsername() {return username;}public void setUsername(String username) {this.username = username;}public String getPassword() {return password;}public void setPassword(String password) {this.password = password;}}

當中的@Size @Pattern都是注解方式的數據驗證方式,后面的message信息都是定義在message.properties中

  • 不須要AccountValidate類了

3、效果演示

啟動tomcat服務,在瀏覽器中輸入:http://localhost:8080/annotation_springmvc/register

我們是用一個大有空格字符串測試一下:

注冊效果:

4、代碼位置

假設有須要的,能夠去這個位置下載下來看看:注解方式的數據驗證。jar包也上傳了

與50位技術專家面對面20年技術見證,附贈技術全景圖

總結

以上是生活随笔為你收集整理的Spring MVC 数据验证——validate注解方式的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。