學了一陣子的struts2,感受收穫挺大的。對於校驗這一塊內容,只有更深刻的瞭解,才能體會到它的靈活所在!框架
1、Action 中的自定義方法的輸入校驗。對於經過action的method屬性所指定的自定義方法,其對應的自定義輸入校驗方法名爲validateMyExecute(假設自定義的方法名爲myExecute)。底層是經過反射來調用的。spa
2、當在Action中指定了自定義的execute方法時,首先會執行自定義的execute方法所對應的輸入校驗方法,而後再去執行validate方法,執行完畢後若是出現了任何錯誤都不會再去執行自定義的execute方法,流程轉向了input這個名字所對應的頁面上。xml
3、自定義Field級別的錯誤提示消息。資源
1)新建一個以Action名命名的properties文件,如RegisterAction.properties。input
2)而後在該屬性文件中指定每個出錯字段的錯誤消息,如:Invalid.fieldvalue.bithday= birthday invalid!!it
4、Struts2的檢驗框架(有效的xml文件)。具體來講分爲字段優先校驗器與校驗器優先校驗器。io
5、校驗日期時,同時採用execute()與框架校驗,若時間範圍不在execute()定義的時間內,而在框架定義的範圍內,調用的是execute的校驗;若時間同時不在它們定義的範圍內,則採用的是框架校驗。dva
6、對於國際化的資源文件,其命名規則是:package_語言名_國家名,例如:struts2
package_zh_CN,package_en_US配置
7、Structs2框架校驗執行的前後順序:
1)首先執行校驗框架(xml文件)
2)執行自定義方法的校驗方法(validateMyExecute)
3)執行validate方法
8、對於struts2.xml文件的結果配置來講,局部要優先於全局的。
9、咱們既能夠在Action中定義異常與結果,也能夠定義全局的異常與結果,局部老是優先於全局的,若是定義成全局,那麼能夠爲全部的Action所公用,而局部的異常與結果只能被當前的Action所獨享,不能爲其餘的Action所共享。