validation简单验证

 

用的文件:validator-rules.xml及调用validator-rules.xmlvalidation.xml文件。

applicationResources.property

validation.xml文件要在struts-config.xml文件中注册

注册方式:以插件折方式  如:

  <!-- 以插件的形式注册框架中的验证文件 -->

    <plug-in className="org.apache.struts.validator.ValidatorPlugIn">

    <set-property property="pathnames"

       value="/WEB-INF/validator-rules.xml,/WEB-INF/validation.xml" />

</plug-in>

 

 

以注册为例:

 

 

=======================================

 

 

主要代码如下:

Reg .jsp

<%@ page language="java" pageEncoding="GB18030"%>

<%@ taglib uri="http://jakarta.apache.org/struts/tags-bean" prefix="bean"%>

<%@ taglib uri="http://jakarta.apache.org/struts/tags-html" prefix="html"%>

 

<html>

    <head>

       <title>JSP for DynaActionForm form</title>

    </head>

    <body>

       <html:form action="/reg">         

           cname : <html:text property="cname"/><html:errors property="cname"/><br/>

           email : <html:text property="email"/><html:errors property="email"/><br/>

           phone : <html:text property="phone"/><html:errors property="phone"/><br/>

           age : <html:text property="age"/><html:errors property="age"/><br/>

           <html:submit/><html:cancel/>

       </html:form>

    </body>

</html>

 

 

 

 

=====================================

 

 

applicationResources.property

 

error.null={0} cannot be null!

error.email=email is not correct!

error.number={0} must be a number!

error.minlength=minlength of {0} is {1}!

error.maxlength=maxlength of {0} is {1}!

error.range={0} must between {1} and {2}!

 

 

=================================================

 

 

validation.xml

 

<!DOCTYPE form-validation PUBLIC

          "-//Apache Software Foundation//DTD Commons Validator Rules Configuration 1.1.3 //EN"

          "http://jakarta.apache.org/commons/dtds/validator_1_1_3.dtd">

<form-validation>                      <!-- 在这里写验证 -->

    <formset>                          <!-- 写表单验证,可以写多个 -->

       <form name="regForm">              <!-- 验证某个表单,nameActionForm名字 -->

           <!-- 验证属性 -->

           <field property="cname" depends="required">

              <msg name="required" key="error.null"/>   <!-- key:消息key -->

              <arg0 name="required" key="cname" resource="false"/> <!--key:参数值  -->

           </field>

          

           <field property="email" depends="required,email">

              <msg name="required" key="error.null"/>

              <arg0 name="required" key="email" resource="false"/> <!--key:参数值  -->

              <msg name="email" key="error.email"/>

           </field>

          

           <field property="phone" depends="required,long,minlength,maxlength">

              <msg name="required" key="error.null"/>

              <arg0 name="required" key="phone" resource="false"/> <!--key:参数值  -->

              <msg name="long" key="error.number"/>

              <arg0 name="long" key="phone" resource="false"/>

             

              <msg name="minlength" key="error.minlength"/>

              <arg0 name="minlength" key="phone" resource="false"/>

              <arg1 name="minlength" key="${var:minlength}" resource="false"/>            

              <var>      <!-- 设定门限 -->

                  <var-name>minlength</var-name>  <!-- name是规定的 -->

                  <var-value>7</var-value>

              </var>

              <msg name="maxlength" key="error.maxlength"/>

              <arg0 name="maxlength" key="phone" resource="false"/>

              <arg1 name="maxlength" key="${var:maxlength}" resource="false"/>

              <var>      <!-- 设定门限 -->

                  <var-name>maxlength</var-name>  <!-- name是规定的 -->

                  <var-value>10</var-value>

              </var>           

           </field>

          

           <field property="age" depends="required,integer,intRange">

              <msg name="required" key="error.null"/>

              <arg0 name="required" key="age" resource="false"/>

              <msg name="integer" key="error.number"/>

              <arg0 name="integer" key="age" resource="false"/>

              <msg name="intRange" key="error.range"/>

              <arg0 name="intRange" key="age" resource="false"/>

              <arg1 name="intRange" key="${var:min}" resource="false"/>

              <arg2 name="intRange" key="${var:max}" resource="false"/>

              <var>      <!-- 设定门限:规定,设定max,min就可以了 -->

                  <var-name>min</var-name>

                  <var-value>0</var-value>

              </var>

              <var>

                  <var-name>max</var-name>

                  <var-value>100</var-value>

              </var>

             

           </field>

       </form>

    </formset>

</form-validation>

 

 

 

======================================

 

 

struts-config.xml

 

<?xml version="1.0" encoding="UTF-8"?>

<!DOCTYPE struts-config PUBLIC "-//Apache Software Foundation//DTD Struts Configuration 1.2//EN" "http://struts.apache.org/dtds/struts-config_1_2.dtd">

 

<struts-config>

  <data-sources />

  <form-beans >

  <!-- 定义动态ActionForm -->

    <form-bean name="regForm" type="org.apache.struts.validator.DynaValidatorForm">

      <form-property name="cname" type="java.lang.String" />

      <form-property name="email" type="java.lang.String" />

      <form-property name="phone" type="java.lang.String" />    

       <form-property name="age" type="java.lang.String" />  

    </form-bean>

 

  </form-beans>

 

  <global-exceptions />

  <global-forwards />

  <action-mappings >

    <action

      input="/reg.jsp"

      name="regForm"

      path="/reg"

      scope="request"

      type="prj9_1.action.RegAction" />

 

  </action-mappings>

 

  <message-resources parameter="prj9_1.ApplicationResources" />

  <!-- 以插件的形式注册框架中的验证文件 -->

    <plug-in className="org.apache.struts.validator.ValidatorPlugIn">

    <set-property property="pathnames"

       value="/WEB-INF/validator-rules.xml,/WEB-INF/validation.xml" />

</plug-in>

 

</struts-config>

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值