`
hsys
  • 浏览: 290549 次
  • 性别: Icon_minigender_1
  • 来自: 杭州
社区版块
存档分类
最新评论

Java Struts2 自定义validation验证

    博客分类:
  • Java
阅读更多
定义验证类,继承FieldValidatorSupport,重写validate方法即可。

import com.opensymphony.xwork2.validator.ValidationException;
import com.opensymphony.xwork2.validator.validators.FieldValidatorSupport;

public class BadwordFilter extends FieldValidatorSupport{

	@Override
	public void validate(Object obj) throws ValidationException {
		String fieldName = getFieldName();
		Object object = getFieldValue(fieldName, obj);
		if(object == null)
			return ;
		String value = object.toString();
		if (value == null || value.length() <= 0)
            return;

		if(isValidWord(value,11) == true){
			this.addFieldError(fieldName, obj);
		}
	}
	
	public  boolean isValidWord(String str1) {
		boolean isExist = false;
		if(str1 == "123456")
			isExist = true;
		return isExist;
	}
}



配置validators.xml
这个文件要和struts.xml放在同一个目录下,因为启动要加载嘛。
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE validators PUBLIC
        "-//OpenSymphony Group//XWork Validator Config 1.0//EN"
        "http://www.opensymphony.com/xwork/xwork-validator-config-1.0.dtd">

<validators>
    <validator name="required" class="com.opensymphony.xwork2.validator.validators.RequiredFieldValidator"/>
    <validator name="requiredstring" class="com.opensymphony.xwork2.validator.validators.RequiredStringValidator"/>
    <validator name="int" class="com.opensymphony.xwork2.validator.validators.IntRangeFieldValidator"/>
    <validator name="long" class="com.opensymphony.xwork2.validator.validators.LongRangeFieldValidator"/>
    <validator name="short" class="com.opensymphony.xwork2.validator.validators.ShortRangeFieldValidator"/>
    <validator name="double" class="com.opensymphony.xwork2.validator.validators.DoubleRangeFieldValidator"/>
    <validator name="date" class="com.opensymphony.xwork2.validator.validators.DateRangeFieldValidator"/>
    <validator name="expression" class="com.opensymphony.xwork2.validator.validators.ExpressionValidator"/>
    <validator name="fieldexpression" class="com.opensymphony.xwork2.validator.validators.FieldExpressionValidator"/>
    <validator name="email" class="com.opensymphony.xwork2.validator.validators.EmailValidator"/>
    <validator name="url" class="com.opensymphony.xwork2.validator.validators.URLValidator"/>
    <validator name="visitor" class="com.opensymphony.xwork2.validator.validators.VisitorFieldValidator"/>
    <validator name="conversion" class="com.opensymphony.xwork2.validator.validators.ConversionErrorFieldValidator"/>
    <validator name="stringlength" class="com.opensymphony.xwork2.validator.validators.StringLengthFieldValidator"/>
    <validator name="regex" class="com.opensymphony.xwork2.validator.validators.RegexFieldValidator"/>
    <validator name="conditionalvisitor" class="com.opensymphony.xwork2.validator.validators.ConditionalVisitorFieldValidator"/>
    <validator name="badword" class="com.hx.corebase.validtor.BadwordFilter"/>
</validators>



这样就可以跟struts validator的一样配置了验证了。
<!DOCTYPE validators PUBLIC "-//OpenSymphony Group//XWork Validator 1.0//EN" 
	"http://www.opensymphony.com/xwork/xwork-validator-1.0.dtd">
	
<validators>
	<field name="badword">
		<field-validator type="requiredstring">
			<message >请输入昵称</message>
		</field-validator>
		<field-validator type="badword">
			<message >存在过滤词</message>
		</field-validator>
    </field>
 </validators>
分享到:
评论

相关推荐

    struts2 自定义验证程序的实现方法详解

    ### Struts2 自定义验证程序的实现方法详解 #### 一、Struts2 内建验证程序实现的分析 在探讨如何实现自定义验证程序之前,我们先来了解一下 Struts2 的内置验证机制。Struts2 提供了丰富的内置验证器(Validator...

    关于Struts2与Validation框架使用中的问题

    在Struts2中集成Validation框架,可以实现更加健壮和一致的用户输入验证。 Struts2的核心是Action类,它是处理请求和业务逻辑的中心。每个Action都可以关联一个或者多个结果,根据不同的执行逻辑跳转到不同的页面。...

    Struts2_Validation

    综上所述,"Struts2_Validation"文件包很可能是围绕如何在Struts2中进行有效数据验证这一主题展开的,包括如何配置Validation.xml,编写验证规则,处理验证错误,以及如何结合其他Struts2特性进行更复杂的验证操作。...

    Struts2 使用Validation框架验证数据(三十七)

    总结,Struts2的Validation框架为Java Web开发提供了一种灵活且强大的数据验证解决方案。开发者可以通过XML配置或注解定义验证规则,利用内置或自定义验证器检查用户输入,同时支持国际化和与Hibernate Validator的...

    Struts2自定义校验框架

    Struts2作为一款流行的Java Web框架,其强大的功能和灵活性深受开发者喜爱。在实际开发中,数据校验是必不可少的一环,确保用户输入的数据合法、有效。Struts2提供了内置的验证框架,允许开发者自定义校验规则,以...

    Struts2 Validation验证实例

    6. **自定义验证器**:如果内置的验证器不能满足需求,可以创建自定义验证器类,实现`org.apache.struts2.validation.Validator`接口,并在Validation.xml中声明。 总的来说,Struts2 Validation提供了灵活的验证...

    struts 2.0自定义验证器

    自定义验证器通常是一个实现了`org.apache.struts2.validator.Validator`接口的Java类。你需要覆盖`validate`方法,该方法接受一个`ActionContext`对象和`FieldErrors`对象,用于存放验证错误。在这个方法内,编写...

    struts的validation验证框架源码

    Struts的Validation验证框架是基于Java的Web应用开发中的一个重要组件,主要用于处理用户输入的数据验证。这个框架在Struts 1.x版本中被广泛使用,它通过定义一系列的规则来确保用户提交的数据满足应用程序的需求,...

    Inline Form Validation Engine+Struts2的AJAX验证

    "Inline Form Validation Engine+Struts2的AJAX验证" 这个标题提到了两个关键组件,一个是Inline Form Validation Engine,另一个是Struts2的AJAX验证。Inline Form Validation Engine是一个前端表单验证插件,它...

    struts2自定义拦截器

    Struts2是一个强大的Java web应用程序框架,它提供了一种组织和控制MVC(模型-视图-控制器)架构的方式。在Struts2中,拦截器是实现业务逻辑和表示层之间解耦的关键组件,允许开发者在请求处理之前或之后执行额外的...

    Struts2验证框架的配置及validation.xml常用的验证规则

    Struts2是一款基于MVC设计模式的开源Java框架,它为Web应用开发提供了丰富的功能,包括请求处理、视图渲染以及表单验证等。在Struts2中,表单验证是一项重要的功能,它确保了用户输入的数据符合预期的格式和范围,...

    Struts2中的validation_多国语言版 国际化i18n+struts2数据校验.zip

    Struts2是一个强大的MVC(模型-视图-控制器)框架,用于构建企业级Java Web应用程序。在Struts2中,数据校验是确保输入数据有效性和安全性的重要环节。本资料包聚焦于Struts2中的数据校验以及国际化(i18n)支持。 ...

    struts2 valadation验证

    Struts2 Validation是Apache Struts框架的一个重要组成部分,主要用于处理Web应用中的数据验证。这个验证框架使得开发者可以方便地在应用程序中实现用户输入的数据检查,确保数据的准确性和完整性。Struts2 ...

    struts2简单的登陆验证

    Struts2是一个非常流行的Java Web框架,用于构建和维护可扩展且有组织的Web应用程序。这个"struts2简单的登陆验证"项目是一个基础入门级别的教程,适合初学者学习理解Struts2的核心概念和工作原理。 在Struts2中,...

    Validation_Struts2

    2. **Validator插件**:Struts2的Validator插件提供了验证框架,它可以读取XML配置文件(struts-validation.xml或struts-plugin.xml)或使用注解定义验证规则。 3. **Validation拦截器**:这是Struts2的核心组件之...

    struts2 validation

    Struts2 Validation是Apache Struts框架的一个重要组成部分,主要用于处理Web应用中的数据验证。这个框架提供了灵活且强大的机制,帮助开发者实现对用户输入的有效性检查,确保数据的准确性和安全性。下面将详细介绍...

    struts验证器validator使用,以及自定义验证器

    自定义验证器需要实现`org.apache.struts2.validator.FieldValidator`接口,重写`validate()`方法。然后在`validation.xml`中指定自定义验证器类型。 例如,创建一个检查邮箱格式的自定义验证器: ```java public ...

    Struts2表单验证

    Struts2是一个流行的Java web开发框架,其在处理用户表单数据时提供了强大的验证功能,确保输入的数据符合预期的格式和规则。本文将深入探讨Struts2的表单验证机制。 首先,Struts2的输入验证分为两种方式:手动...

    Struts-Validation

    自动验证基于配置文件(通常是struts-config.xml或struts-validation.xml)和自定义的ValidatorForm类。在配置文件中,开发者定义了每条验证规则,如字段的必要性、长度限制、正则表达式等。自定义的ValidatorForm类...

Global site tag (gtag.js) - Google Analytics