`

struts2之校验框架

阅读更多
也就是action的两个后台校验之一,一个是重写validate方法,一个就是写个与action这样的java文件同名的xml文件
如:RegisterAction.java,所建立的校验框架的名字为RegisterAction-validation.xml



在action这样的java文件目录下建立一个名字如:
RegisterAction-validation.xml的xml文件
文件头部如下:
<?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">

DOCTUPE标签中说明了所引用的一个dtd文件的来源。

xml文件的内容如下:
<validators>
<!-- 以下是非字段校验,顺序为我用谁去校验(requiredstring),去校验谁(username) -->
 <!--  	<validator type="requiredstring">-->
		<!-- 下面的param中的name是固定的为fieldName -->
<!-- 		<param name="fieldName">username</param>
		<message>username should not be blank</message>
	</validator>
	
	<validator type="stringlength">
		<param name="fieldName">password</param>
		<param name="minLength">6</param>
		<param name="maxLength">10</param>
		<message>uaername should be between ${minLength} and ${maxLength}</message>
	</validator>
-->
<!--以下是字段校验,校验顺序为,我去校验谁(username),用谁去校验 (requiredstring) -->
	<field name="username">
		<field-validator type="requiredstring">
			<param name="trim">true</param>
			<message>username should not be blank</message>
		</field-validator>
		
		<field-validator type="stringlength">
			<param name="maxLength">10</param>
			<param name="minLength">5</param>
			<message>uaername should be between ${minLength} and ${maxLength}</message>
	    </field-validator>
	</field>
	
    <field name="age">
    	<field-validator type="int">
    		<param name="min">1</param>
    		<param name="max">150</param>
    		<message>age should be between ${min} and ${max}</message>
    	</field-validator>
    </field>    
</validators>

校验分两种校验方式
1:
非字段校验中:
validator 标签是注明用什么类型的校验方式去校验。
<param name="fieldName">username</param> param标签是说明用上面的校验方式校验哪个字段,其中,name="fieldName" 为固定写法。message标签:注明出错时返回给addFieldError中的参数的值。

2:
字段校验:
field标签注明所要校验的字段名称。
field-validator标签注明采用哪个校验类型进行校验。
param标签是注明要校验的内容,如<param name="maxLength">10</param>,校验输入的username不得大于10


注意:此框架校验所得的错误信息都属于field级别,且校验框架的校验顺序,优先于
action这个java文件中的validate方法。


PS:校验类型,和其所属的类
<?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">
<!-- START SNIPPET: validators-default -->
<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="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"/>
</validators>
<!--  END SNIPPET: validators-default -->

分享到:
评论

相关推荐

    Struts2校验框架应用

    Struts2作为一款流行的Java Web开发框架,提供了一套强大的校验框架,使得开发者能够方便地对用户输入数据进行验证,确保数据的准确性和安全性。本文将深入探讨Struts2校验框架的应用,包括其核心概念、配置方式、...

    struts2验证框架

    Struts2 验证框架详解 Struts2 验证框架是基于 Java 语言的 Web 应用程序框架,提供了一个强大的验证机制,以确保用户输入的数据满足业务逻辑的要求。在 Struts2 中,验证机制是通过 validator 来实现的,该机制...

    Struts2自定义校验框架

    Struts2提供了内置的验证框架,允许开发者自定义校验规则,以满足特定业务需求。下面将详细介绍Struts2自定义校验框架的相关知识点。 1. **Struts2验证框架概述** Struts2的验证框架主要负责处理用户提交的数据,...

    Struts2的校验框架

    总的来说,Struts2的校验框架通过提供灵活的配置和易于扩展的机制,使得Web应用的输入验证变得简单而有效。它可以帮助开发者避免因用户输入不合法而导致的程序错误,提升应用的用户体验,同时增强系统的稳定性和安全...

    struts2校验框架使用心得.txt

    其中,Struts2提供的校验框架是其核心特性之一,能够有效地进行表单验证,并且支持多种验证方式。 #### 二、配置Struts2框架 为了使用Struts2框架,首先需要在项目的`web.xml`文件中配置过滤器。下面的示例展示了...

    Struts2 校验器

    8. **整合其他验证框架**:除了内置的验证功能,Struts2还可以与Hibernate Validator、JSR 303/JSR 349等Java Bean Validation标准进行集成,以利用更丰富的验证约束。 总之,Struts2的校验器是其强大功能的一部分...

    struts2验证框架简单实例

    在Struts2框架中,验证框架是其一个重要组成部分,用于确保输入数据的准确性和完整性,从而防止因无效数据导致的程序异常或错误。本实例将带你深入理解Struts2验证框架的使用,以及在实际操作中可能遇到的问题和解决...

    struts2.0的数据校验框架struts2.0的数据校验框架

    struts2.0的数据校验框架struts2.0的数据校验框架struts2.0的数据校验框架struts2.0的数据校验框架

    struts2验证框架示例

    在Struts2中,验证框架是其核心特性之一,它允许开发者对用户输入的数据进行校验,确保数据的完整性和安全性。这个“struts2验证框架示例”提供了深入理解并实际操作Struts2验证功能的机会。 首先,让我们了解一下...

    Struts2的校验框架之一

    Struts2应用开发系列Struts2的校验框架

    Struts2的校验框架之四

    Struts2应用开发系列Struts2的校验框架

    Struts2的校验框架之三

    Struts2应用开发系列Struts2的校验框架

    Struts2的校验框架之二

    Struts2应用开发系列Struts2的校验框架

    struts2学习笔记八(第8讲.Struts2的校验框架)

    本讲主要探讨Struts2的校验框架,它提供了对用户输入数据进行验证的功能,确保数据的有效性和安全性。 在传统的MVC模式中,数据验证通常在控制器或模型层进行,但在Struts2中,校验逻辑被移到了专门的校验框架中,...

    struts2验证框架简单示例

    在Struts2中,验证框架是处理用户输入验证的关键部分,它确保了从客户端接收到的数据的质量和准确性。本示例将深入探讨Struts2验证框架的基本用法,特别适合初学者理解和掌握。 ### 一、Struts2验证框架概述 ...

    Struts2输入校验总结

    综上所述,Struts2的输入校验机制不仅支持基本的手动校验,还提供了高度可配置和扩展的验证框架,使得开发者能够根据应用的具体需求,灵活地实现各种校验逻辑,从而提升应用程序的质量和用户体验。

    Struts 2 自定义MVC 框架

    Struts 2是一款强大的Java Web开发框架,基于Model-View-Controller(MVC)设计模式,旨在简化企业级应用的开发。它通过提供一个统一的架构来管理控制器、视图和模型,使得开发者能够更专注于业务逻辑,而不是底层...

    struts2 校验框架

    Struts2是一个非常流行的Java Web开发框架,它提供了一种优雅的方式来组织和控制MVC(模型-视图-控制器)应用程序。...对于Java Web开发者来说,深入理解并熟练运用Struts2的验证框架是非常重要的技能之一。

    struts2校验框架

    其中,Struts2校验框架(Validation Framework)是该框架的核心特性之一,主要用于确保用户输入的数据符合预期的格式或范围,从而有效避免因数据不规范而引发的各种问题。 #### 二、Struts2校验框架的基本概念 在...

    struts2学习笔记九(第9讲.Struts2的校验框架 续)

    Struts2的校验框架通过提供声明式和编程式的验证方式,使得数据验证变得更为简洁和灵活。 1. **声明式验证**:在Action类中,我们可以使用注解来定义字段的验证规则。例如,`@RequiredFieldValidator`用于检查字段...

Global site tag (gtag.js) - Google Analytics