1. 程式人生 > >struts數據校驗之使用xml方式校驗

struts數據校驗之使用xml方式校驗

als bsp 默認 字符串長度 直接 一個 back log mes

<field name=""></field> //自動校驗器

<validator type=""></validator> //非自動校驗

其校驗器都有:

required:必填校驗器
requiredstring:必填字符串校驗器
int:整數校驗器
double:雙精度浮點數校驗器
date:日期校驗器
expression:表達式校驗器
fieldexpression:字段表達式校驗器
email:電子郵件校驗器
url:網址校驗器
visitor:Visitor校驗器
conversion:轉換校驗器
stringlength:字符串長度校驗器
regex:正則表達式校驗器

用法如下:

requiredstring:必填字符串校驗器。參數:trim。必須是字符串形式,其中,表單提交上來的字符串默認是去空了的,所以<param name="trim">true</param>默認就是為true,so這句話可以省略直接寫<message>標簽裏的錯誤提示信息。

<field name="name">
    <field-validator type="requiredstring">
     <!-- 這句話可省略 -->
<!-- <param name="trim">true</param>
--> <message>姓名是必填的</message> </field-validator> </field>

stringlength:字符串傳遞校驗器。參數:minLengthmaxLength錯誤信息中可以使用el表達式將param標簽中的name屬性值當做變量使用。

<field name="name">
    <field-validator type="stringlength">
        <param name="minLength">3</param
> <param name="maxLength">10</param> <message>姓名應該在${minLength}~${maxLength}位之間</message> </field-validator> </field>

required: 必填校驗器。參數:trim。表示該字段是必須填寫的,但沒要求必須是字符串,也可以是整型數值,唯一要求就是要有值。

<field name="age">
    <field-validator type="required">
        <message>年齡不能為空</message>
    </field-validator>
</field>

int:整型校驗器。參數:min、max。 其範圍可以設置最大值和最小值。

<field name="age">
    <field-validator type="int">
        <param name="min">1</param>
        <param name="max">120</param>
        <message>年齡應該在${min}~${max}之間</message>
    </field-validator>
</field>

filedexpression:字段表達式校驗器。參數:expression。

<field name="repass">
    <field-validator type="fieldexpression">
        <!-- 方式1:使用數學表達式,右邊要多一個括號, 否則就會報錯,應該是底層代碼編寫時就多了個括號 -->
        <!-- <param name="expression">(pass != repass))</param> -->
        <!-- 方式2:使用equals -->
        <!-- <param name="expression">!pass.equals(repass))</param> -->
        <!-- 方式3:使用eq,但不需要多寫一個括號了,正常使用即可 -->
        <param name="expression">(pass eq repass)</param>
        <message>兩次密碼輸入不一致</message>
    </field-validator>
</field>

date:日期校驗器。參數:min、max。

<field name="birth">
    <field-validator type="date">
        <param name="min">1900-1-1</param>
        <param name="max">2017-10-6</param>
        <message>出生日期應該在1900-1-1至2017-10-6之間</message>
    </field-validator>
</field>

regex:正則表達式校驗器。參數:regexExpression。

<field name="email">
    <field-validator type="email">
        <message>郵箱格式不對</message>
    </field-validator>
</field>

struts數據校驗之使用xml方式校驗