![]() |
|
| 当前位置: > 主页>网络编程>Java>JAVA开发技巧>使用 Struts Validator(1) |
|
移到 JavaScript 进行验证 客户端验证最明显的选择就是 JavaScript。这个流行的脚本语言易于学习、灵活,而且在每个现代 Web 浏览器中都可用(虽然会有所差别)。对于许多应用程序来说,JavaScript 足够好了。但是,仍然有些不足。 首先,JavaScript 仍然是代码,所以就像其他代码一样,必须编写、测试、调试和部署 JavaScript。如果从 5 位邮编转到 9 位邮编,那么验证代码就要改变,而且需要在它们影响的所有页面上测试修改。虽然这项工作对于得到清爽的、让用户高兴的结果来说很值得,但却是一项时间密集型工作。 在使用 JavaScript 时,也会非常麻烦 —— 可以容易地把 scriplet 放进 HTML 页面,但是会给维护带来恶梦。虽然进行限制并不太难,但是有种诱惑就是只对页面内的脚本做 “一次快速修正”,却从来不删除这段脚本并重写 JavaScript 库中的代码。 最后,可能必须要一个项目一个项目都带着 JavaScript 库。这也不算什么大麻烦,但是个问题 —— 对于部署代码的每个平台都要测试该代码。 请不要误解我 —— JavaScript 是验证的优秀解决方案,但是如果用 Struts,那么还会有第三个 —— 甚至更好的选项。 了解 Struts Validator Struts 提供了一个名为 Validator 的优秀组件。Validator 可以插入 Struts 应用程序(将在 安装 Validator 框架 中介绍),甚至直接和最新的 Struts 发行版绑定在一起。只要几个 JAR 文件就可以了。但是 Validator 强在什么地方呢?为什么要用它代替 JavaScript 呢? 而且,您应当认识到,Validator 的大部分执行都使用 JavaScript。所以实际上并没有离开 JavaScript,而且得到的客户端验证也是 JavaScript 擅长的内容。但是,Validator 消除了 JavaScript 的许多问题。首先,它是由成千上万的 Struts 开发人员和用户编码、测试和调试过的,因此降低了您需要进行的测试数量。(我绝对不是 暗示您不要测试;Validator 只是降低了测试负担,但并没有完全消除它。) 另外,Validator 提供了大量常用验证函数,所以您不必为电子邮件地址、电话号码、邮编以及其他常用数据编写验证器。这棒不棒? 而最重要的,可能是 Struts Validator 主要通过配置文件工作,而不用内联的 HTML 代码。通过简单的 XML 文件,可以指示要验证哪个字段,要执行哪类验证。Struts 和 Validator 负责把配置变成工作的 JavaScript 代码,您这一边不需要做任何额外工作!虽然偶尔也要为特定于应用程序的数据添加新的验证函数,但是在 HTML 中使用这些函数的工作由 Struts 处理 —— 不需要手工过程。这就是 Validator 真正胜出而珍贵的地方。被说服了么?现在来看它。 设置示例应用程序 从 struts-blank WAR 开始 在介绍如何使用 Validator 之前,需要利用一个示例应用程序。如果用二进制发行版安装了 Struts(细节请参阅 附录),那么就有了一个好的起点。请确保 Tomcat 正在运行,并导航到 http://localhost:8080/struts-blank。应当看到像图 1 所示的内容:
图 1:struts-blank 应用程序提供了新应用程序的模板 这页上的文本明确地说明了需要做的事情: 1、找到磁盘上的 struts-blank.war 文件。(在我的机器上,是 /usr/local/jakarta-tomcat-5.5.9/webapps/struts-blank.war。) 现在需要把 WAR 文件展开到一组目录中,这样可以方便地处理。请创建一个在其中操作的目录; 我通常给它起名为 staging 或类似的名称。创建了目录之后,请用 jar 命令,使用 xvf 选项把这个文件展开到新建的目录中,如清单 1 所示: 清单 1. WAR 文件目录
可以对这些文件做修改,根据个人需要定制应用程序。这种方法的好处是所有的设置文件都有了,不用考虑要下载所有正确的 WAR 文件。有哪个开发人员不喜欢这么好的方便呢?
|
||||||||||||||||||||||||||||||||||||||||