[url]這個是官網效驗部分的doc。
struts驗證分為2種:field validators 和non field validators
首先是驗證器的執行先後:
non field validators優先field validators,
non field validators排在前面的先執行
field validators排在後面的先執行
短路原則:
non field validators最優先執行,如果某個字段效驗失敗,則改字段下的所有效驗不會獲得執行機會,不會影響其他欄位的執行,field validators一樣操作。
non field validators不會影響field validators的執行。
這裡使用都是non field validators的效驗,在學習的時候記錄下,設定2個相同的field validators或non field validators,只會執行乙個。
[b][color=darkred]1.必填效驗器[/color][/b]:
可接收引數:fieldname
對於輸入框不能用這個,應該使用requiredstring,我想應該輸入框預設傳入的是字元長度為0的"",對於required而言,是不為空的。所以過濾是無效的。這樣的話,可以用在上傳檔案的時候判斷是否上傳了檔案
pic$
本來我是想將pic1和pic2一起使用required做效驗 但是發現後面的age會覆蓋username,貌似只能對乙個引數做效驗,後來按慣性思維,放在同乙個param下,結果沒有過濾該欄位。
pic,pic2
[b][color=darkred]2.必填字串效驗器[/color][/b]:
可接收引數:fieldname ,trim
要求字段值必須非空且長度大於0
$
[b][color=darkred]3.int,double效驗器[/color][/b]:
可接收引數:fieldname ,min,max
必須在int型範圍
user.age
18150
$國際化:login.age.valid=年齡必須在$-$之間
如果接收的是非數字,頁面上就會輸出2條錯誤資訊,不清楚在那裡設定短路。
[b][color=darkred]4.date效驗器[/color][/b]:
user.birth
1990-01-01
2100-01-01
$[b][color=darkred]5.expression效驗器[/color][/b]:
可接收引數:expression
求出ognl表示式的值。為true通過驗證
Struts2的內建校驗器
從struts2的配置檔案中可以看到struts2有如下內建校驗器 1,required 必填校驗器,要求字段必須有值 性別不能為空 2,requiredstring 必填字串校驗器,要求必須有值且長度大於0,即不能是空字串。缺省會去掉字串前後空格 true 使用者名稱不能為空 3,stringle...
Struts2 進行資料的效驗
建立action類,繼承actionsupport類,新增validate 效驗方法,actionsupport類是乙個預設的action實現類,提供了包括獲取國際化資訊的方法,資料效驗的方法,以及預設處理使用者請求的方法等。import com.opensymphony.xwork2.action...
struts2 內建型別轉換器
如下型別可以相互轉化 boolean和boolean 完成字串和布林值之間的轉換 char和character 完成字串和字元之間的轉換 int和integer 完成字串和整形之間的轉換 long和long 完成字串和長整形之間的轉換 flota和float 完成字串和單精度浮點值之間的轉換 dou...