Struts-Validate框架

Validator(验证器)框架是一个Struts插件,它支持采用声明式的方式对表单进行校验,而不需要用户编写一行Java代码。

使用 Validator 框架的好处:

  • 更好的可维护性
  • 校验实现标准化
  • 正确的实现
  • 更少的代码重复
  • 自动客户端验证

配置Validate

  1. 使用org.apache.struts.validator.DynaValidatorForm这个formbean封装表单数据,这个formbean的validate方法在执行,会调用validate框架。

  2. 在struts应用集成validate框架,就是在struts-config.xml文件中配置如下元素:

<plug-in className="org.apache.struts.validator.ValidatorPlugIn">
        <set-property property="pathnames" 
                      value="/org/apache/struts/validator/validator-rules.xml,
                             /WEB-INF/validation.xml"/>
    </plug-in>
  1. 在web-inf/目录下加入validation.xml(用户编写这个文件,告诉validate框架对哪个表单、以及表单的哪个字段进行校验)
<?xml version="1.0" encoding="UTF-8" ?>

<!DOCTYPE form-validation PUBLIC
         "-//Apache Software Foundation//DTD Commons Validator Rules Configuration 1.3.0//EN"
         "http://jakarta.apache.org/commons/dtds/validator_1_3_0.dtd">

<form-validation>
    <formset>
        <form name="register2Form">
            <field property="username" depends="required,minlength,maxlength">
                <arg key="用户名" resource="false"/>
                <arg name="minlength" position="1" key="${var:minlength}" resource="false"/>
                <arg name="maxlength" position="1" key="${var:maxlength}" resource="false"/>

                <var>
                    <var-name>minlength</var-name>
                    <var-value>3</var-value>
                </var>
                <var>
                    <var-name>maxlength</var-name>
                    <var-value>6</var-value>
                </var>
            </field>

            <field property="password" depends="mask">
                <arg key="密码" resource="false"/>
                <var>
                    <var-name>mask</var-name>
                    <var-value>^\d{3,6}$</var-value>
                </var>
            </field>

            <field property="email" depends="email">
                <arg key="邮箱" resource="false"/>
            </field>

        </form>

    </formset>
</form-validation>
  1. 在struts应用编写资源文件,并在资源文件中加入:
errors.required={0} is required.
errors.minlength={0} can not be less than {1} characters.
errors.maxlength={0} can not be greater than {1} characters.
errors.invalid={0} is invalid.

errors.byte={0} must be a byte.
errors.short={0} must be a short.
errors.integer={0} must be an integer.
errors.long={0} must be a long.
errors.float={0} must be a float.
errors.double={0} must be a double.

errors.date={0} is not a date.
errors.range={0} is not in the range {1} through {2}.
errors.creditcard={0} is an invalid credit card number.
errors.email={0} is an invalid e-mail address.
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

小黄鸭and小黑鸭

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值