1、輸入校檢struts2提供了兩種實現方法:(校驗action中的所有方法或者指定方法)
?? a、采用手工編寫代碼實現
?? b、基于XML配置方式實現
2、具體實現:
?? a、繼承ActionSupport,重寫它的validate()方法(對所有方法進行校驗)
????? 注意要學習正則表達式
????? 正則表達式:"^1[358]\\d{9}$"
????? ^:表示要檢測的字符串開頭
????? 1:表示字符串的第一個字符必須是1
????? [358]:表示字符串的第二個字符必須在358三個數字中的一個
?????1、輸入校檢struts2提供了兩種實現方法:(校驗action中的所有方法或者指定方法)
?? a、采用手工編寫代碼實現
?? b、基于XML配置方式實現
2、具體實現:
?? a、繼承ActionSupport,重寫它的validate()方法(對所有方法進行校驗)
????? 注意要學習正則表達式
????? 正則表達式:"^1[358]\\d{9}$"
????? ^:表示要檢測的字符串開頭
????? 1:表示字符串的第一個字符必須是1
????? [358]:表示字符串的第二個字符必須在358三個數字中的一個
????? \\d:表示 數字[0-9]中的一個
????? {9}:表示后面有9位數字
????? $:表示字符串的最后一位
3、對指定方法進行校驗:
?? 只需把上面的校驗方法名改為validateXxx()即可,其中Xxx為要校驗的方法名,首字母大寫
?? 如:要校驗update()方法,即改為validateUpdate()
4、基于XML配置方式實現:
?? 在要校驗的方法所在類所在的包下,名字為ActionName-validation.xml,其中ActionName為Action的名字,后面-validation.xml是固定寫法
?? ValidateAction-validation.xml如下:
??
?1?<?xml?version="1.0"?encoding="UTF-8"?>
?2??<!DOCTYPE?validators?PUBLIC?"-//OpenSymphony?Group//XWork?Validator?1.0.3//EN" "http://www.opensymphony.com/xwork/xwork-validator-1.0.3.dtd">
?3??<validators>
?4??????<field?name="username">
?5???<field-validator?type="requiredstring">
?6???????<param?name="trim">true</param>
?7???????<message>用戶名不能為空!</message>
?8???</field-validator>
?9??????</field>
10??????<field?name="telno">
11???<field-validator?type="requiredstring">
12???????<message>手機號不能為空!</message>
13???</field-validator>
14???<field-validator?type="regex">
15?????????<param?name="expression"><![CDATA[^1[358]\d{9}$]]></param>
16?????????<message>手機號格式不正確!</message>
17????</field-validator>
18??????</field>
19??</validators>
5、只需修改XML文件的名稱,改為ActionClassName-ActionName-validation.xml,其他都不用動
?? 如上例中:改為ValidateAction-validate_update-validation.xml,只對ValidateAction中的update方法校驗