Validator驗證框架

2022-09-13 05:15:08 字數 2171 閱讀 8774

validator驗證框架

在設計validator驗證框架時,需要明確以下問題。

(1)當使用者沒有輸入資料時,彈出英文提示資訊。

(2)當使用者輸入的資料長度大於系統設定的資料長度,彈出英文提示資訊。

(3)當使用者輸入的賬號或密碼不正確,彈出英文提示資訊。

1.2 工作流程圖

validator驗證框架系統流程如圖1所示。

1.1 技術要點

validator驗證框架在struts應用中得到了廣泛的運用,validator驗證框架主要依賴兩個jar檔案。

q jakarta-oro.jar:該檔案主要提供了一些文字類、具有文字替換、過濾和分割等功能。

q commons-validator.jar:該檔案提供了乙個簡單、可擴充套件的驗證框架,包括了通用的驗證方法和規則。

在struts中,這兩個jar檔案新增到應用web-inf/lib目錄中。

validator框架採用兩個基於xml的配置檔案來配置驗證規則。這兩個檔案為validator-rule.xml和validation.xml。在struts中,它們均存放在web-inf資料夾下。

1.2 validator-rules.xml檔案

validator-rules.xml檔案包括了一組通用的驗證規則,對所有的struts都適用。一般情況下,沒有必要修改該檔案,除非需要修改或擴充套件預設的規則。

說明:如果想擴充套件預設的驗證規則,最好把自定義的規則放在另乙個xml檔案中,而不是直接新增到validator-rules.xml檔案中,這樣,當公升級validator框架的版本時,不需要修改validator-rules.xml檔案。

在validator-rules.xml檔案中,每個元素定義了乙個唯一的驗證規則。例如,以下**定義了乙個名為「required」的驗證規則。

(1)name屬性

name屬性指定驗證規則的邏輯名,這個名字必須是唯一的。

(2)classname和method屬性

classname和method屬性分別指定實現驗證規則邏輯的類和方法。

(3)msg屬性

msg屬性制定來自於資源檔案中的訊息key。當驗證失敗時,validator框架將根據這個訊息key到資源檔案中查詢匹配的訊息文字。

(4)depends屬性

depends屬性制定在呼叫當前驗證規則之前必須先呼叫的其他驗證規則。例如以下「maxlength」驗證規則的配置**中使用了depends屬性。

以上**表明,在呼叫「maxlength」驗證規則之前,先呼叫「required」規則。如果depends屬性包含多個驗證規則,則用逗號隔開,例如:

depends="required,integer"

如果呼叫depends屬性指定的驗證規則驗證失敗,就不會再呼叫下乙個規則。

1.3 valiation.xml檔案

validator框架的另乙個配置檔案為valiation.xml檔案,這個檔案用於宣告form bean應該採用的驗證例程,取代在actionform類中程式設計的方式來實現驗證邏輯。下面將介紹valiation.xml檔案中的元素。

(1)元素

元素是validator配置檔案的根元素,它包含兩個子元素:和元素。元素可以出現0次或者多次,而元素可以出現一次或者多次。

(2)元素

在元素中可以定義子元素,它用來定義常量表示式,在檔案的其餘地方可以應用這些常量表示式。

(3)元素

元素包含兩個子元素:和。可以出現0次或者多次,元素可以出現一次或者多次。

(4)元素

元素的子元素用於為表單配置驗證規則,它的name屬性指定了表單的名字。元素可以包含乙個或者多個子元素。

(5)元素

元素的子元素用於配置表單中的字段的驗證規則。

(6)元素

元素的子元素指定驗證規則對應的訊息文字。

(7)元素

元素可以包括4個附加的子元素:、、以及,使用者替換復合訊息中的引數。元素指定第乙個替換值,元素指定第二個替換值,依次類推。

(8)元素

元素還可以包含0個或者多個元素。元素用來向驗證規則傳遞引數。

Validator驗證框架

轉validator驗證 框架 struts1.2中創 建驗證框架的步驟 1 在struts config.xml 檔案中新增下列內容 plug in classname org.apache.struts.validator.validatorplugin set property propert...

Validator驗證框架執行過程

應用啟動時,strust會載入這個外掛程式,並呼叫他的init 方法,init 方法根據pathnames載入 相應的validator xml,檔案,把驗證資訊讀入到記憶體中。當從jsp頁面提交後根據相應的form表單進行驗證。先到 validation.xml中對某個屬性進行驗證,當arg的re...

Golang 資料驗證validator

在web應用中會碰到各種欄位的校驗 比如使用者名稱 密碼 郵箱等 如果按流程順序校驗 會很長而且很難看 這裡可以使用validator包 來幫助對字段的校驗 記錄一下 備忘 package main import fmt validator gopkg.in go playground valida...