不知怎么的,这两天变得有些迷茫了,项目接近尾声了,但自己却不知道自己要干什么了,或许是这个时候状态不好,慢慢的就能够恢复了,不过还好的是,发现这个时候写写程序,倒还能够很好的过去,头脑似乎陷入了某种僵局,一种不用思考的僵局,可以用过去见过的方法就能解决问题,便也懒得去思考了,这并不是一种好的现象了,心浮气燥,怎么能够做一个好的程序员呢?
不过也还是有些进步的,知道怎么去使用 Commons Validator 了,虽然完全不能满足我现在的功能需要,但是还不失为一种比较好的验证框架了,可以省去我们自己写的验证逻辑。稍微把我的理解和一些使用方法记录一下,省得下回忘了。这些是做后台验证的,前台JS验证没有实验过,不太熟悉。
重点在于三个部分,这里我使用org.apache.struts.validator.DynaValidatorForm 作为struts 的FormBean。
1. struts-config.xml
a) form-bean的type 要用org.apache.struts.validator.DynaValidatorForm
<form-bean
name="inputForm"
type="org.apache.struts.validator.DynaValidatorForm">
<form-property name="firstName" type="java.lang.String"/>
<form-property name="lastName" type="java.lang.String"/>
</form-bean>
b) action-mapping 中对应的action 里validate=”true”
input为需要验证的页面,同时也是出错返回的页面
<action-mappings>
<action
path="/inputSubmit"
type="con.ncs.InputAction"
name="inputForm"
scope="request"
validate="true"
<forward name="success" path="/success.jsp" />
</action>
</action-mappings>
c) 配置validator的PlugIn,在struts启动时加载PlugIn,加载rules文件和validation配置
<plug-in
className="org.apache.struts.validator.ValidatorPlugIn">
<set-property
property="pathnames"
value="/WEB-INF/validator-rules.xml,/WEB-INF/validation.xml"/>
</plug-in>
2. validation.xml
这里配置验证逻辑,没什么好说的,需要的时候查书就可以了
3. 需要验证的Form
Form中的元素与Form-Bean里的一一对应,并且也与validation.xml中的元素一一对应。页面中还要加入以下内容用来显示出错信息。
<logic:messagesPresent>
There were errors
<ul>
<font color='red' >
<html:messages id="error">
<li><c:out value=”${error}”/></li>
</html:messages>
</font>
</ul>
</logic:messagesPresent>
博主项目尾声陷入迷茫,写程序时发现使用Commons Validator验证框架可省去自己写验证逻辑。重点介绍了使用该框架的三个部分:struts - config.xml的配置、validation.xml配置验证逻辑以及需要验证的Form的设置,还提及页面显示出错信息的内容。
497

被折叠的 条评论
为什么被折叠?



