一、使用Action的validate()方法进行验证
使用了struts2框架后,可以在Action类中添加public void validate()方法对数据进行验证,如下所示:
public class TestAction extends ActionSupport{
private String name;
//setter && getter methods....
public String save() throws Exception {
if(hasFieldErrors()){
return INPUT;
}
return SUCCESS;
}
public void validate() {
if
(!name.trim().equals("sunny"))
this.addFieldError("msg.name",
"请输入正确的用户名.");
}
}
输入页面form.jsp的主要内容:
<body>
<s:fielderror
key="msg.name"/>
<s:form action="test!save"
name="test">
<s:textfield
name="name"></s:textfield>
<s:submit></s:submit>
</s:form>
</body>
struts.xml的相关配置:
<action name="test" class="zz.TestAction">
<result
name="input">form.jsp</result>
<result name="success">test.jsp</result>
</action>
<action name="saveMd" class="zz.TestAction"
method="save">
<result
name="input">formMethod.jsp</result>
<result
name="success">test.jsp</result>
</action>
此时,当在form.jsp中输入的内容未通过验证时(即输入的不是sunny),则会在form.jsp中显示提示信息。
二、使用struts2的验证框架
若使用validation框架,则不需要在Action中编写validate方法。
可以为一个Action编写一个验证配置文件,这里的
Action类名为TestAction,则配置文件名为TestAction-validation.xml,即类名-validation.xml的格式,或者为一个Action类中的方法编写一个配置文件,该配置文件的命名格式为类名-Action名-validation.xml,例如为上面的save方法编写一个验证文件,则该文件名为TestAction-saveMd-validation.xml(参考struts.xml文件中的saveMd的配置),这个配置文件的格式如下:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE validators
PUBLIC "-//OpenSymphony Group//XWork Validator 1.0.2//EN"
"http://www.opensymphony.com/xwork/xwork-validator-1.0.2.dtd">
<validators>
<field name="name">
<field-validator
type="requiredstring">
<message>请输入姓名</message>
</field-validator>
</field>
</validators>
不需在页面中提供显示错误信息的标签,可以直接显示,测试文件的主要内容:
<s:form action="save" name="test">
<s:textfield
name="name" />
<s:submit />
</s:form>
若同时提供了TestAction-validation.xml和TestAction-saveMd-validation.xml配置,将首先使用前一个文件进行检测,然后再根据后一个文件进行检测,可以从页面上显示的结果中看出这点。
分享到:
相关推荐
这个validate验证框架中的actiionerror级别的错误的验证提示,并包含了如何在一个Action中处理多个业务逻辑,(struts1.x 中的DispatcheAction),例子比较简单,希望对大家学习struts有所帮助。
本文将深入探讨如何结合Validate框架在Struts中实现有效的数据验证。 首先,我们需要理解Struts中的验证流程。当用户提交表单时,Struts会调用ActionForm对象的validate()方法进行验证。这个方法通常是根据业务逻辑...
Struts的Validate框架是Java Web开发中用于处理用户输入验证的一种工具,它是Struts框架的重要组成部分,主要用于在MVC(Model-View-Controller)架构中确保用户提交的数据满足应用程序设定的规则。在MyEclipse 6.0...
在Struts2中,`validate`是用于处理用户输入验证的重要机制,它可以帮助开发者确保从客户端提交的数据满足预设的业务规则,从而提高应用程序的安全性和用户体验。 1. **Struts2 验证基础** Struts2的验证分为两种...
2. **添加验证方法**:在ActionForm子类中,你需要为每个需要验证的字段添加一个对应的`validate`方法。这些方法通常以`validateField`的形式命名,例如`validateName`、`validateEmail`等。在这些方法内部,你可以...
在Struts2中,我们可以利用validate方法进行高效且灵活的前端数据验证,确保用户输入的数据满足业务规则,从而提升应用的安全性和用户体验。 在Struts2中,表单验证主要依赖于两个核心组件:Action类和Validator...
本文将详细讨论如何在Struts中使用ActionForm的`validate`方法进行数据验证。 `validate`方法是在ActionForm中定义的一个可选方法,用于在提交表单数据后验证用户输入的有效性。这个方法通常会在调用Action的`...
在本文中,我们将深入探讨Struts的验证框架Validate的使用方法,以及它在实际开发中的应用。 1. **验证框架概述** Struts的验证框架是Struts 1.x中的核心功能之一,它允许开发者定义一组验证规则,并在用户提交...
其中,Struts2提供的校验框架是其核心特性之一,能够有效地进行表单验证,并且支持多种验证方式。 #### 二、配置Struts2框架 为了使用Struts2框架,首先需要在项目的`web.xml`文件中配置过滤器。下面的示例展示了...
当用户在Web表单中输入数据并提交时,Struts框架会调用对应的ActionForm类中的`validate`方法进行验证。如果验证失败,错误信息会被添加到ActionForm的`errors`集合中,然后返回到相应的JSP页面显示错误信息。 ### ...
### Struts2与jQuery.validate框架简介 #### Struts2框架 Struts2是Apache软件基金会的一个开源项目,它是Struts1的升级版,提供了一个用于构建企业级Java Web应用的强大MVC框架。Struts2的核心组件包括拦截器、...
下面将详细介绍Struts2自定义校验框架的相关知识点。 1. **Struts2验证框架概述** Struts2的验证框架主要负责处理用户提交的数据,进行验证,并在验证失败时显示错误消息。它支持两种验证方式:基于注解的验证...
在Struts2中,验证框架是处理用户输入验证的关键部分,它确保了从客户端接收到的数据的质量和准确性。本示例将深入探讨Struts2验证框架的基本用法,特别适合初学者理解和掌握。 ### 一、Struts2验证框架概述 ...
Struts2的Validation框架主要负责验证Action类中的方法参数,通过定义一个或多个validate()方法来实现。这些方法可以对用户输入的数据进行检查,如非空验证、长度限制、格式校验等。如果验证失败,框架会将错误信息...
在Struts2中,验证框架是其核心特性之一,它允许开发者对用户输入的数据进行校验,确保数据的完整性和安全性。这个“struts2验证框架示例”提供了深入理解并实际操作Struts2验证功能的机会。 首先,让我们了解一下...
在Struts框架中,`validate`功能是用于进行表单验证的重要机制,它帮助开发者确保从用户端接收到的数据是合法且有效的。 在Struts框架中,`validate`的应用主要体现在ActionForm类的子类上。ActionForm是Struts框架...
2. **配置验证框架** 验证框架的配置通常在`struts-config.xml`文件中完成。你需要定义一个或多个`action-mappings`,并为每个映射指定一个对应的验证配置文件(通常是`.validate`文件),如`loginAction-validate....
我们可以使用Struts2的拦截器(Interceptor)机制来进行数据校验,但前端验证可以减轻服务器的压力,提高用户体验。 整合jQuery Validate和Struts2的步骤如下: 1. **引入依赖**:在HTML文件中引入jQuery、jQuery ...
总的来说,Struts2提供了灵活的校验机制,开发者可以选择直接在Action类中重写`validate()`方法,或者利用XWork的Validator框架创建独立的验证配置文件,以适应不同项目的需求。通过这两种方式,可以有效地保证数据...