对于struts服务器端验证,用两种方式:1.在自己的ActionForm中重写validate方法。
2.使用validate框架。
validate框架将验证规则与被验证对象剥离,对于验证规则的修改可以在外部的配置文件中完成。在多个Action对应同一个Form的情况下,可以使用不同验证规则。
validate框架的使用时比较麻烦的。
需要两片配置文件,平且在jsp页面中要使用struts的标签,展示错误信息。
例1:register.jsp
在这个页面的提交表单中<html:errors>是struts的标签,用于展示错误信息。property属性的值要与提交项的name一致。
<form method="post" action="register.do" name="register">
<p>
username:
<input type="text" name="username">
<html:errors property="username"/>
</p>
<p>
password:
<input type="password" name="password">
<html:errors property="password"/>
</p>
<p>
repassword
<input type="password" name="repassword">
<html:errors property="repassword"/>
</p>
email
<input type="text" name="email">
<html:errors property="email"/>
<p>
<input type="submit" value="register" name="subBtn">
</p>
</form>
</body>
RegisterForm.java
Form继承ValidaorForm。
public class RegisterForm extends ValidatorForm
然后就是要写一遍配置文件validtion.xml。
在这篇配置文件中将验证的数据与验证规则绑定,Struts提供了自定义的验证规则,在validtor-rules.xml中可以看到。一般情况下不需要我们自定义验证规则。如果需要的话我们可以查看已经写好的validator类来编写我们的验证规则,并配置在validtor-rules.xml就可以使用。
validator.xml与validtor-rules.xml使用同样的DTD.
<form-validation>
<formset>
<form name="registerForm">
<field property="username" depends="required">
<arg0 key="label.username"/>
</field>
</form>
</formset>
form标签的name属性指要验证的registerForm名,与struts-config.xml的form-bean name一致。field标签指要验证的属性名,depends是指定依赖的验证规则。在ApplicationResourse.properties中加入两个键值对
errors.required={0} can't be blank!
label.username=username
errors.required就是所要输出在页面上的错误提示,这个key的名称是规定好的,不能随便启。{0}是一个占位符,是可变的字符串。
<arg0 key="label.username"/>就表示在{0}的位置用label.username对应的文本替代。
所以输出到页面上就是username can't be blank!
在struts-config.xml中配置我们的action,form,还有使用验证框架插件。
<form-bean name="registerForm"
type="com.hl.form.RegisterForm">
</form-bean>
..........
<action path="/register" name="registerForm"
type="com.hl.action.RegisterAction" validate="true"
input="/register.jsp">
<forward name="success" path="/success.jsp"></forward>
</action>
<plug-in className="org.apache.struts.validator.ValidatorPlugIn">
<set-property property="pathnames"
value="/WEB-INF/validator-rules.xml,
/WEB-INF/validation.xml" />
</plug-in>
action的属性validate="true"验证框架才能起作用。input属性是指如果验证失败将跳转的页面。
就这样一个最简单的验证框架使用完成了。其实还是很麻烦。
分享到:
相关推荐
本实例将带你深入理解Struts2验证框架的使用,以及在实际操作中可能遇到的问题和解决方案。 首先,Struts2的验证框架主要基于两个组件:`Validation`和`Validator`。`Validation`是Action类的注解,而`Validator`则...
在Struts1中,验证框架是处理用户输入数据校验的重要组成部分,它帮助开发者确保用户提交的数据符合预定义的规则,从而提高应用程序的安全性和用户体验。下面将详细介绍Struts1验证框架的使用。 首先,我们来看一下...
Struts2作为一款流行的Java Web开发框架,提供了一套强大的校验框架,使得开发者能够方便地对用户输入数据进行验证,确保数据的准确性和安全性。本文将深入探讨Struts2校验框架的应用,包括其核心概念、配置方式、...
在提供的“struts2验证框架例子”中,你可能会看到类似的代码结构和配置,通过实践这些示例,你可以更好地理解如何在实际项目中应用Struts2的验证框架。同时,它也将帮助你学习如何处理常见的验证场景,如非空检查、...
接下来,我们将通过一个具体的例子来深入理解Struts2校验框架的配置和使用方法。 ##### 3.1 配置文件 Struts2校验框架的配置文件通常命名为`validation.xml`,并遵循特定的DTD格式。例如,以下是一段典型的校验...
本篇将详细讲解如何在Struts2中实现一个简单的验证框架模式。 首先,我们需要了解Struts2验证框架的基本概念。验证框架允许开发者定义一组规则来检查用户提交的数据,如果数据不符合预设的规则,框架会返回错误消息...
Struts7验证框架是用于Java Web开发中的一个关键组件,主要负责处理用户输入数据的验证。这个框架在学习和实际项目开发中具有广泛的应用,因为它能够有效地提高代码的可维护性和减少开发工作量。 传统的Struts框架...
本教程通过一个简单的登录实例,将引导你了解如何搭建Struts1框架环境并进行实际开发。 首先,我们需要安装和配置Java Development Kit (JDK) 和 Apache Tomcat 服务器,这是运行Struts1应用的基础。确保你的系统...
在这个实例中,我们将深入探讨Struts验证框架的原理、配置以及如何在实际项目中应用。 首先,Struts验证框架的核心是基于ActionForm对象的验证,它在Struts 1.x中是主要的表单处理组件。ActionForm对象用于封装用户...
Struts验证框架通过提供一种结构化的验证机制,使得开发者能够更方便地对用户提交的数据进行校验。 Struts验证框架实例通常包括以下几个部分: 1. **ValidatorForm**: 这是Struts验证框架的基础,继承自`org....
用户名、密码、年龄、电话号、email、日期验证、合法链接 的验证例子。
Struts2框架是一个基于Model...这个实例虽然简单,但对于初学者来说,它很好地展示了Struts2框架的基础工作原理和基本的Web应用开发流程。通过这个实例,可以进一步学习和理解Java Web开发,为后续复杂的项目打下基础。
在这个简单例子中,我们可能会看到在Action类的属性上使用了Struts2的验证注解,如`@Valid`和`@Field`,或者有一个对应的XML验证文件(通常命名为actionName-validation.xml)。这些注解或XML规则定义了字段的验证...
这个"java做的struts验证框架例子"是为了展示如何在Struts中实现数据验证。在Java Web开发中,数据验证通常分为客户端验证和服务器端验证两部分。客户端验证可以在用户提交表单前通过JavaScript进行,而服务器端验证...
Struts的验证框架Validate是Apache Struts框架中的一个重要组成部分,主要用于处理用户输入的数据验证。在Web应用程序中,数据验证是确保用户提交的信息符合业务规则的关键步骤,防止非法数据进入数据库或引发程序...
通过这个简单的项目,初学者可以逐步掌握Struts1框架的基本使用,为后续的复杂应用开发打下基础。同时,这也提醒我们,即使在不涉及数据库的情况下,依然可以通过模拟数据来实现基本的功能验证,这对于教学和测试来...
在这个"Struts2+rest简单实例"中,开发者创建了一个小型的示例应用,目的是帮助初学者快速理解如何在Struts2框架中集成RESTful服务。以下是这个实例中可能涉及的关键知识点: 1. **Struts2框架基础**:Struts2的...
在描述中提到的"Structs相关实例"是为了帮助开发者更好地理解和掌握Struts2框架的实际应用。这些实例通常包括配置文件、Action类、视图模板、以及控制器逻辑等组成部分,覆盖了从简单的请求处理到复杂的业务流程控制...
这个“struts2简单例子”是初学者理解Struts2工作原理和核心概念的一个很好的起点。让我们深入探讨一下Struts2的基础知识。 1. **MVC架构**: MVC模式是软件设计中的一个经典模式,它将应用逻辑分为三个主要部分:...
Struts2 框架实例教程 Struts2 是一款基于 Model-View-Controller(MVC)设计模式的开源 JavaEE 框架,用于构建企业级 Web 应用程序。它提供了强大的动作处理、结果转发、表单验证、国际化等功能,极大地简化了Web...