HkM项目结束总结

  
总结
    经过为期近两个月的项目练习,了解了开发一个实际项目它的具体流程及在每一个阶段都做哪些工作。在技术上进一步一步熟悉了 Struts 框架中的相关内容。在这里我想谈一下有关 Validator 框架验证和 Struts 标签的相关内容。
1.        Validator 验证框架
Validator 框架验证已经克服在 ActionForm Bean validate ()方法中写验
规则的缺点 缺少灵活性、重复编程。它可以通过配置验证规则( validator.xml )无需编程来实现对标单的验证。
一个具体的 Validator 框架验证主要涉及到以下内容: validator-rules.xml validator.xml struts-config.xml application.properties 等文件。           validator-rules.xml 文件包含了一组通用验证规则,适用于所有的 Struts 应用。当然我们也可以改写该文件,来修改默认的验证规则或对默认规则作相应的扩展。
在该文件中主要包括 <validator> 元素,其具体格式如下:
<validator  name="required"
                classname="org.apache.struts.validator.FieldChecks"
                method="validateRequired"
                methodParams="java.lang.Object,
                       org.apache.commons.validator.ValidatorAction,
                       org.apache.commons.validator.Field,
                       org.apache.struts.action.ActionMessages,
                       org.apache.commons.validator.Validator,
                       javax.servlet.http.HttpServletRequest"
                             dependes=””
                msg="errors.required"/>
其中, name 属性为验证名、 classname 验证规则引用的类、 method 引用类的方法、 methodParams 验证方法包含的参数、 msg 指出当当验证失败时来自于 application.properties 中的消息 key dependes 改验证执行之前必须执行的验证。
validator.xml 文件是针对具体的 Struts 应用来对其相应得 ActionForm 配置具体的验证规则。它主要包括 <form-validtion> 元素,其具体格式如下:
<form-validtion>
<global>
        <!-- An example global constant
        <constant>
            <constant-name>ruler</constant-name>
            <constant-value>^[ - ]*$</constant-value>
        </constant>
    </global>
    <formset>           
        <form name="StoreInformation">
             <field   property="codeAddressShopKana"
depends="required,mask">
              <arg0 key="lable.codeAddressShopKana" resource="true"/>
              <arg1 name="mask" key="lable.codeAddressShopKana"
resource="true"/>
              <arg2 name="mask" key="lable.kana" resource="true"/>
              <var>
                     <var-name>mask</var-name>
                     <var-value>${ruler}<var-value>
              </var>
            </field>
       </form>
    </formset>
</form-validtion>
其中,子元素 <global> 用来定义常量表达式,在所在文件的其它地方可以引用它,具体格式为: ${ruler} 。子元素 <formset> 包括两个子元素, <from> <constant>
元素 <form> 又包括 <field> 元素,每一个 <field> 元素对应 ActionForm Bean 中的一个属性。该元素包含以下属性 property 用于指定 ActionForm Bean 中的属性名, depends 用于指定该属性引用的验证规则。 <field> 元素还可以包括 <msg> 子元素包括以下属性 name 用于指定验证规则的名字, key resource true 时指定消息 key ,且消息 key application.properties 中必须存在。当 resource false 时, key 直接指定消息文本。 <field> 元素的另一子元素 <arg> ,该元素用于指定 application.properties 中的消息文本中的变量的值。 <field> 元素的 <var> 用于向验证规则传递参数。它的子元素 <var-name> 指定验证规则的名字,子元素 <var-value> 指定被传参数的值。
    struts-config.xml 文件也要作相应的修改,即把要做验证的 ActionForm Bean 所在的 Action 的属性 validate 设为 true 即可。另外为了保证验证正常进行应确保 ActionForm Bean 是继承 ValidatorForm DynaValidator 父类。
    为了显示出错误信息应在界面上使用 <html:errors /> 显示错误信息。另外也可将错误信息以对话框形式弹出,其操作如下:在 jsp 页面添加两项内容:第一, <html:javascript formName=”checkForm”/> ;第二, <html:form action=”/path” οnsubmit=”return validateCheckFrom(this)”> 。这样就把后台验证改为了前台验证。
以上为我在本次练习中对 validator 框架验证的理解,更多的内容还有待于在今后的工作中进一步学习。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值