使用基於xml配置方式實現輸入校驗時,action也需要繼續actionsupport,並且提供校驗檔案,校驗檔案和action類放在同乙個包下,檔案的取名格式為:actionclassname-validation.xml,其中actionclassname為action的簡單類名,-validattion未固定的寫法。如果action類為cn.itcats.useracction,那麼該檔案的取名應為:useraction-validation.xml.
校驗的模板:
<?xml version="1.0" encoding="utf-8"?>
true
使用者名稱不能為空!
指定action中要校驗的屬性,指定校驗器,上面指定的校驗器requiredstring是由系統提供的,系統提供了能滿足大部分驗證需求的校驗器,這些校驗器的定義可以在xwork-2.x.jar中的com.opensymphony.xwork2.validator.validators下的default.xml中找到。
為校驗失敗後的提示資訊,如果需要國際化,可以為message指定key屬性,key的值為資源檔案中的key。
在這個校驗檔案中,對action中字串型別的username屬性進行驗證,首先要求呼叫trim()方法去掉空格,然後判斷使用者名稱是否為空。
校驗器列表:
系統提供的校驗器如下:
required (必填校驗器,要求field的值不能為null)
requiredstring (必填字串校驗器,要求field的值不能為null,並且長度大於0,預設情況下會對字串去前後空格)
stringlength(字串長度校驗器,要求field的值必須在指定的範圍內,否則校驗失敗,minlength引數指定最小長度,maxlength引數指定最大長度,trim引數指定校驗field之前是否去除字串前後的空格)
regex(正規表示式校驗器,檢查被校驗的field是否匹配乙個正規表示式.expression引數指定正規表示式,casesensitive引數指定進行正規表示式匹配時,是否區分大小寫,預設值為true)
int(整數校驗器,要求field的整數值必須在指定範圍內,min指定最小值,max指定最大值)
double(雙精度浮點數校驗器,要求field的雙精度浮點數必須在指定範圍內,min指定最小值,max指定最大值)
fieldexpression(欄位ognl表示式校驗器,要求field滿足乙個ognl表示式,expression引數指定ognl表示式,該邏輯表示式基於valuestack進行求值,返回true時校驗通過,否則不通過)
email(郵件位址校驗器,要求如果field的值非空,則必須是合法的郵件位址)
date(日期校驗器,要求field的日期值必須在指定範圍內,min指定最小值,max指定最大值)
conversion(轉換校驗器,指定在型別轉換失敗時,提示的錯誤資訊)
visitor(用於校驗action中的復合屬性,它指定乙個校驗檔案用於校驗復合屬性中的屬性)
expression(ognl表示式校驗器,expression引數指定ognl表示式,該邏輯表示式基於valuestack進行求值,返回true時校驗通過,否則不通過,該校驗器不可用在字段校驗器風格的配置中)
基於XML配置方式實現輸入校驗
action類需要繼承actionsupport,然後提供校驗檔案,如下 true 使用者名稱不能為空 在這個校驗檔案中,對action中字串型別的username屬性進行驗證,首先要求呼叫trim 方法去掉空格,然後判斷使用者名稱是否為空。該檔案需要和action類放在同乙個包下,檔案的取名應遵守...
Struts2 輸入校驗 基於XML配置方式實現
使用基於xml配置方式實現輸入校驗時,action也需要繼承actionsupport,並且提供校驗檔案,校驗檔案和action類放在同乙個包下,檔案的取名格式為 actionclassname validation.xml,其中actionclassname為action的簡單類名,validat...
13 基於xml校驗的特點
當為某個action提供了actionclassname validation.xml和actionclassname actionname validation.xml兩種規則的校驗檔案時,系統按下面順序尋找校驗檔案 1。aconclassname validation.xml 2。actionc...