SSH(struts+spring+hibernate)迅速开发--附录1 Struts校验框架(2)

 

1.       配置struts-config.xml

i)                    struts-config.xml里面添加一个login action如下

    <action

      attribute="loginForm"

      input="/login.jsp"

      name="loginForm"

      path="/login"

      scope="request"

      type="org.springframework.web.struts.DelegatingActionProxy">

      <forward name="error" path="/login.jsp" />

      <forward name="success" path="/userList.do" />

    </action>

ii)                   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>

iii)                  

2.       编写loginForm的校验规则

i)                    确定WEB-INF目录下是否有validator-rules.xml,如果没有,请将demo工程里面WEB-INF目录下的validator.xml文件,copy到新工程

ii)                   WEB-INF目录下,新建一个validation.xml文件,如果以前存在,就在代码中添加loginForm的校验规则,代码如下:

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

<!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="loginForm">

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

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

             <arg0 key="login.username"/>

         </field>

         <field property="password" depends="required,minlength,maxlength">

             <!--msg标签指定消息

                 name指定对应required校验器

                 key指定提示信息的key

 

                 arg?指定提示消息里面的替代

             -->

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

             <arg0 key="login.password"/>

 

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

             <arg0 key="login.password"/>

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

             <var>

                 <var-name>minlength</var-name>

                 <var-value>6</var-value>

             </var>

            

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

             <arg0 key="login.password"/>

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

             <var>

                 <var-name>maxlength</var-name>

                 <var-value>9</var-value>

             </var>

         </field>

     </form>

  </formset>

</form-validation>

注意事项:

a)    <form>里面的name属性的值,必须同需要校验的form,struts-config.xml里面定义的formname值一样

b)       

3.       src目录下的applicationContext.xml文件里面,添加<bean name="/login" class="cn.com.book.demo.struts.action.LoginAction"/>,注册一个新的bean---LoginAction

4.       重新编译工程,发布到web容器,访问login.jsp,就可以演示输入值的校验了

 
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值