关于validator验证框架问题 up ! calidator framwork 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 <field property="userName" depends="required,mask,minlength"> //声明三种比较规则depends里的,三种规则的描述在validator-rules.xml中可以找到,可以通过这个文件中的描述找到对应方法,自己解析源码只帮你分析一种规则:minlength<arg name="minlength" key="${var:maxlength}" resource="false" position="1"/> //定义的minlength方法会来查找这个arg节点(调用下面的参数) <var> //定义了一个minlength=5的节点 <var-name>minlength </var-name> <var-value>5 </var-value> </var> 实现过程,通过查看描述文字找到对应方法,可以看到:minlength方法通过field值和你这里传输进去的minlength做比较然后返回结果。不符合规则的报错信息不需要你来指定(resource="false"),即他的报错文字是直接提供不需要你去指定在某某properties的某某key <?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"><!-- 1、<form-validation>元素 它包含两个子元素<global>和<formset>。<global>元素可以出现零次或多次, 而<formset>元素可以出现一次或多次。 2、<global>元素 它包含<constant>子元素,它用来定义常量表达式,在文件的其余地方可以引用 这些常量表达式。 在<formset>元素中可以通过${constant-name}的形式来引用它们。 3、<formset>元素 它包括两个子元素,<constant>和<form>。 4、<form>元素 <form>子元素用于为表单验证规则,它的name属性指定了表单的名字,它包含了 一个或多个<field>子元素 5、<field>元素 用于配置表单中字段的验证规则。它有两个属性: property:指定ActionForm Bean中需要进行验证的字段的名字 depends:指定字段的验证规则,多个规则之间以豆号隔开。 --><form-validation> <global> <constant> <constant-name>password</constant-name> <constant-value>^\d{8}\d*$</constant-value> </constant> </global> <formset> <form name="loginForm"> <field property="username" depends="required"> <arg0 key="lable.username" /> </field> <field property="password" depends="required,minlength"> <arg0 key="lable.password" /> <arg1 name="minlength" key="${var:minlength}" resource="false" /> <var> <var-name>minlength</var-name> <var-value>7</var-value> </var> </field> </form> </formset></form-validation> 1.Msg属性:msg属性指定来自于Resource Bundle中的消息key。当验证失败时,Validator框架将根据这个消息key到resource Bundle中查找匹配的消息文本。虽然你没有写 不过在validator-rules.xml已经存在2,是指的下面的。 因为她的resources是false所以就需要在下面进行定义而mask则不需要3.一个是直接用<msg>属性指定的Resource Bundle中的属性。另一个是通过属性把 validation的优势是后台数据校验,像这种校验字符的简单事情用js就足够了。 hibernate 查询的时候,list 总获取不到值,怎么了? 问个关于log4j的问题 POI读取EXCEL导入数据库(带源程序),导入到数据库的时候提示错误,请此方面的高手指点!在线等,急切! 这是一个什么错误? 关于在线统计登陆用户姓名,谢谢 Applet理解问题? 关于在Google上提交自己的网站:以前提交了网址,有成功提交的提示,现在是个空白页面,没有任何提示,这是怎么回事? 好人啊!真是好人啊 面试题 关于Excel导入问题,求指教!!! 关于数据库连接池问题 最近在研究天乙论坛的原代码,有不懂的地方忘大家指教
只帮你分析一种规则:minlength
<arg name="minlength" key="${var:maxlength}" resource="false" position="1"/> //定义的minlength方法会来查找这个arg节点(调用下面的参数) <var> //定义了一个minlength=5的节点
<var-name>minlength </var-name>
<var-value>5 </var-value>
</var>
实现过程,通过查看描述文字找到对应方法,可以看到:
minlength方法通过field值和你这里传输进去的minlength做比较然后返回结果。不符合规则的报错信息不需要你来指定(resource="false"),即他的报错文字是直接提供不需要你去指定在某某properties的某某key
<!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"><!--
1、<form-validation>元素
它包含两个子元素<global>和<formset>。<global>元素可以出现零次或多次,
而<formset>元素可以出现一次或多次。
2、<global>元素
它包含<constant>子元素,它用来定义常量表达式,在文件的其余地方可以引用
这些常量表达式。
在<formset>元素中可以通过${constant-name}的形式来引用它们。
3、<formset>元素
它包括两个子元素,<constant>和<form>。
4、<form>元素
<form>子元素用于为表单验证规则,它的name属性指定了表单的名字,它包含了
一个或多个<field>子元素
5、<field>元素
用于配置表单中字段的验证规则。它有两个属性:
property:指定ActionForm Bean中需要进行验证的字段的名字
depends:指定字段的验证规则,多个规则之间以豆号隔开。
-->
<form-validation>
<global>
<constant>
<constant-name>password</constant-name>
<constant-value>^\d{8}\d*$</constant-value>
</constant>
</global>
<formset>
<form name="loginForm">
<field property="username" depends="required">
<arg0 key="lable.username" />
</field> <field property="password" depends="required,minlength">
<arg0 key="lable.password" />
<arg1 name="minlength" key="${var:minlength}"
resource="false" />
<var>
<var-name>minlength</var-name>
<var-value>7</var-value>
</var>
</field>
</form>
</formset>
</form-validation>
1.Msg属性:msg属性指定来自于Resource Bundle中的消息key。当验证失败时,Validator框架将根据这个消息key到resource Bundle中查找匹配的消息文本。
虽然你没有写 不过在validator-rules.xml已经存在
2,是指的下面的。 因为她的resources是false所以就需要在下面进行定义而mask则不需要
3.一个是直接用<msg>属性指定的Resource Bundle中的属性。另一个是通过属性把