struts2 系統預設校驗器大全

2021-06-22 12:11:53 字數 3748 閱讀 3378

xwork-2.0.4.jar

包中,請讀者在

\com\opensymphony\xwork2\validator\validators

路徑下找乙個名字為「

default.xml

」的xml

檔案。在該檔案中有所有

struts2

自帶的輸入校驗器定義。具體**如下:

以上**是所有

struts2

輸入校驗器的定義,下面將這些輸入校驗器(一共有

13個)的字段和非欄位格式的校驗形式寫在如下,本例中沒有程式**示例,所有輸入校驗器的應用**都是筆者自己定義的。當校驗檔案的取名為actionclassname-validation.xml時,會對 action中的所有處理方法實施輸入驗證。如果你只需要對action中的某個action方法實施校驗,那麼,校驗檔案的取名應為:actionclassname-actionname-validation.xml,其中actionname為struts.xml中action的名稱。

field

請輸入資料

請輸入資料

field

true

請輸入資料

true

請輸入資料

field180

數字必須在$-$歲之間

180數字必須在$-$歲之間

field

0.110.1

輸入浮點無效

0.110.1

輸入浮點無效

field

2009-01-01

2019-01-01

日期無效

2009-01-01

2019-01-01

日期無效

password==repassword

兩者輸入不一致

password==repassword

兩者輸入不一致

兩者輸入不一致

field

非法郵件位址

非法郵件位址

field

無效**

無效**

field

fieldcontext

輸入校驗

fieldcontext

輸入校驗

field

型別轉換錯誤

型別轉換錯誤

field110

true

字串長度必須為10位

110true

字串長度必須為10位

field

手機號碼必須為數字並且是11位

手機號碼必須為數字並且是11位

**解釋(1

)必填校驗器

required

是用來判斷輸入的字段是否為空。如果未輸入任何資料則會顯示錯誤資訊。

fieldname

屬性是指定校驗的欄位名。這個屬性是所有

struts2

自帶的輸入校驗器都具有的屬性。因此介紹其他輸入校驗器時,筆者略過不談。但是讀者自己要知道該屬性是輸入校驗器共有的。該校驗器其他標籤都和前幾章節中有過介紹,筆者也略過不談。 (

2)必填字串校驗器

requiredstring

用來判斷輸入字段是否是

1個非空字串

。如果不是也顯示錯誤資訊。其中的

trim

屬性是在校驗之前對字串進行處理。預設是「

true」。

(3)整數校驗器

int判斷輸入的字段資料是在乙個整數範圍內。

min屬性是最小值,

max是最大值。

標籤內可用「

$」格式類表示他們具體的值。 (

4)浮點校驗器

double是t

判斷輸入的字段資料是在

1個浮點數範圍內。

mininclusive

表示這個範圍的最小值。

max inclusive

表示這個範圍的最大值。還有

minexclusive

和maxexclusive

兩個屬性,前者表明在浮點範圍之外的最小值,後者是在浮點範圍之外的最大值。

注意:以上四個屬性如果沒有宣告,則輸入校驗不會去檢查。

5)日期校驗器

date

判斷輸入的字段的日期值是否在

1個日期範圍內。

min是該範圍的最小值,

max是最大值。他們兩個屬性也和浮點校驗器的四個屬性相同,如果沒有宣告則輸入校驗不檢查。 (

6)表示式校驗器

expression

只有非欄位校驗格式。不能在字段校驗中宣告。它的屬性也是

expression

。如**所示開發者可以使用

ognl

表示式來定義校驗規則。 (

7)字段表示式校驗器

fieldexpression

判斷字段是否滿足乙個表示式。如**所示,當用來判斷輸入的密碼和確認密碼值是否一致就可以使用該校驗器。它的屬性

expression

和表示式校驗器相同。不過它可以用在字段校驗中。 (

8)郵件校驗器

email

來判斷輸入的字段是1個

email

時候是否符合

email

的格式。 (

9)**校驗器

ur l

來判斷輸入的字段是

1個**時候是否符合**的格式。 (

10)visitor

校驗器就是判斷集合型別的字段。前面章節有所介紹。這裡在重申一下

context

屬性是可以應用的集合型別中元素物件的別名。

屬性是指定在錯誤資訊中前面是否加上特定字首。該字首內容可在

標籤中定義。另外這兩個屬性也是沒有宣告時候,校驗器不會去執行檢查。 (

11)型別轉換校驗器

conversion

用來判斷輸入字段是否進行型別轉換。它有1個

repopulatefield

屬性,如果為「

true

」表明如果發生型別轉換錯誤,返回到

struts.xml

中指定的

action

的input

檢視介面時候還是否把原來錯誤的輸入內容顯示出來。「

false

」則相反。從這也可以看出筆者一直堅持的觀點型別轉換也屬於輸入校驗的一種是有理論依據的。 (

12)字串長度校驗器

stringlength

用於判斷輸入的字串長度是否是指定的長度範圍。其中

minlength

是最小字串長度,

maxlength

是最大字串長度。

trim

屬性和上述必填字串校驗器

requiredstring

中trim

屬性擁有相同功能。這三者也是屬於不宣告則不執行檢查的可選屬性。 (

13)正規表示式校驗器

regex

檢查字段輸入值是否和

1個正規表示式匹配。

expression

屬性中內容就是該正規表示式。還有個

casesensitive

屬性,為「

true

」則表明匹配時候對字母大小寫敏感。反之則不敏感。如**所示筆者用了

1個判斷輸入的值是否是

11位,全部由數字組成的正規表示式。對於輸入手機號碼資料的字段,該校驗規則是最適用的。

struts2 系統預設校驗器大全

在 xwork 2.0.4.jar 包中,請讀者在 com opensymphony xwork2 validator validators 路徑下找乙個名字為 default.xml 的xml 檔案。在該檔案中有所有 struts2 自帶的輸入校驗器定義。具體 如下 以上 是所有 struts2 ...

Struts 2 之校驗器

對於輸入校驗,struts2提供了兩種方式,1 使用validate方法 2 基於xml配置實現 支援校驗的action必須實現validateable介面,一般直接繼承actionsupport就可以了 public void validate if mobile null equals this...

Struts2框架的校驗器

struts2 框架系統內部已經註冊了內建的校驗器,可以開啟 struts2 的lib 包下的xwork.jar 包,在com opensymphony xwork2 validator validators 目錄下找到乙個 default.xml 配置檔案,該檔案中定義了 struts2 框架內建...