在一些需要數據輸入的地方,往往需要對數據進行一些驗證,例如是否爲空,長度的限制,格式的限制等。
下面來給大家介紹一下在struts2中使用配置文件來實現輸入的校驗。
配置文件的命名:
根據相應的Action類文件,建立相應的XML配置文件。例如:UserAction類文件,對應的XML配置文件的名稱應該爲UserAction-Validation.xml。如果需要對指定方法進行驗證,命名格式爲:ActionClassName-ActionAliasName-validation.xml。其中ActionAliasName指的是Struts.xml中Action name=“XX”的XX名稱,不是method=“XX”的名稱。
例如:
Struts.xml文件:
<span style="font-size:18px;"> <action name="user_*" class="userAction" method="{1}">
<result name="registPage">/WEB-INF/jsp/regist.jsp</result>
<result name="input">/WEB-INF/jsp/regist.jsp</result>
</action></span>
UserAction-user_regist-validation.xml文件:
<span style="font-size:18px;"><?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE validators PUBLIC
"-//Apache Struts//XWork Validator 1.0.3//EN"
"http://struts.apache.org/dtds/xwork-validator-1.0.3.dtd">
<validators>
<!-- 校驗用戶名 -->
<field name="username">
<field-validator type="requiredstring">
<message>用戶名不能爲空</message>
</field-validator>
</field>
<!-- 校驗密碼 -->
<field name="password">
<field-validator type="requiredstring">
<message>密碼不能爲空</message>
</field-validator>
</field>
<!-- 校驗姓名 -->
<field name="name">
<field-validator type="requiredstring">
<message>姓名不能爲空</message>
</field-validator>
</field>
<!-- 校驗地址-->
<field name="addr">
<field-validator type="requiredstring">
<message>地址不能爲空</message>
</field-validator>
</field>
<!-- 校驗郵箱 -->
<field name="email">
<field-validator type="email">
<message>郵箱格式不正確</message>
</field-validator>
</field>
</validators></span>
但校驗失敗的時候,會返回邏輯視圖input,因此在struts.xml文件中需要配置<result name="input"></result>。
這樣就完成了使用XML配置文件對輸入進行校驗。