目前struts数据校验放在bean里校验。它需要你提交数据,才能检查表单数据的合法性。并且要求bean和表单严格一一对应。使用起来局限性很大。为此本人开发一套标签,将数据校验放在标签里。标签校验规则来自于你的数据库表结构。
本标签组件名为useeasy-size.tld。类似于struts-html.tld标签组件。useeasy-size.tld保留了struts-html.tld所有功能,它扩展了标签的数据校验属性。应用useeasy-size.tld标签,实现页面表单的前台自动校验。目前useeasy-size.tld只支持oracle数据库。
应用此标签最大的好处就是它是前台校验,所以你不需要提交数据。它的校验规则来自你的数据库表结构,所以它的校验是最最准确的,最最恰当。
当你的表结构发生了变化,你的html可以不需要做任何的改变。标签仍然做出正确的校验。
应用此标签,你甚至不需要任何的脚本校验代码!
useeasy-size.tld支持以下几种的校验:
不为空校验。
数字类型校验。
日期类型校验。
最大长度校验。使用实例example.jsp:
<%@ taglib uri="/WEB-INF/useeasy-size.tld" prefix="shtml" %>
<script language="javascript" src="library/script/validate.js"></script>
<html>
<shtml:form action=“example.do“ tab=“table_name“ onsubmit=“return validator()“>
<shtml:text property="name"/>
<shtml:textarea property="content" ></shtml:textarea>
<input type=“submit“ value=“提交“>
</shtml>
</html>
useeasy-size.tld组件包含下列标签类型:
useeasy-size.tld
struts类似标签名
write
write
form
form
text
text
hidden
hidden
textarea
textarea
属性说明:
标签名:form
属性
描述
tab
表单数据的数据库表名。如果没有指定,标签默认表名等于action的bean名。
标签名:text
属性
描述
tab
字段对应的数据库表名。如果没有指定,从form标签继承。
field
字段对应的数据库的字段名。如果没有指定,标签默认field等同property。
标签名:hidden
属性
描述
tab
字段对应的数据库表名。如果没有指定,从form标签继承。
field
字段对应的数据库的字段名。如果没有指定,标签默认field等同property。
标签名:textarea
属性
描述
tab
字段对应的数据库表名。如果没有指定,从form标签继承。
field
字段对应的数据库的字段名。如果没有指定,标签默认field等同property。
标签名:bean
属性
描述
maxLength
必需。值在页面上显示的最大长度。超出长度以“...”替换。并以帮助条显示。
由于blog不支持附件。限于篇幅,实在是无法粘贴完整的代码给大家。需要代码的兄弟姐妹们,可以跟我联系。我的email为:boy@useeasy.com。
下期将提供一个非常非常好的代码生成工具。它可以根据你的数据库表结构自动生成bean、action、ado(数据库层)。可以说它让你从枯燥的abc代码解脱出来,让你完全去关心更高层次的设计上。呵呵~敬请关注!