`
Molisa
  • 浏览: 35200 次
  • 性别: Icon_minigender_1
  • 来自: 武汉
社区版块
存档分类
最新评论

struts2校验框架

阅读更多
校验框架
1.使用struts自带的校验器

  validate方法实现校验的原理:
  程序执行到Action的时候,先判断有没有validate方法,如果实现了先执行validate,再执行execute.如果没有就直接执行execute

  struts框架的校验原理:
  程序执行到Action时,但是还没有执行到里面的方法时将其拦截,转而执行校验器,校验器执行完毕后返回继续执行Action
  所以要先做两件事:1.配置拦截器(让Action暂停,执行校验部分) 2.配置校验器(通过配置文件找到对应的校验器以实现校验器功能)
 
  校验器分为:字段校验器(field-specific FieldValidator),普通校验器(PlainValidator)
  非字段校验器(Non-Field Validator)可以配置字段校验器和普通校验器
  字段校验方式只能配置字段校验器

  给Action的字段配置校验器,比如LogginAction.java里有属性username和password,配置文件LogginAction-validation.xml里对两个字段

进行配置:
  <validators>
    #字段方式
    <field name="username">
        <field-validator type="requiredstring">
            <message>no null</message>
        </field-validator>
    </field>
   
    #非字段方式
    <validator>
        <validator type="requiredstring">
             #param在申明变通校验器的时候不是必须的,因为普通校验器只返回actionerror(Action级错误)
             <param name="fieldName">passeword</param>
             <message>password empty.</message>
        <validator/>
    </validator>
  </vaildators>



struts提供的校验器有:

  • required
  • requirestring
  • int
  • date
  • expression  #普通校验器,只能在字段校验方式下使用
  • fieldexpression
  • email
  • url
  • visitor
  • conversion
  • stringlength
  • reqex


visistor ,short-circuiting validator可在字段和非字段方式下使用

断路校验器的使用:

非字段校验方式:
<validator type="requiredstring" short-circuit="true">
   <param name="fieldName">age</param>
   <message>not null</messgae>
</vlidator>

字段校验方式:
 
<field name="confirm">
        <field-validator type="requiredstring" short-circuit="true">
            <param name="expression">(password==confirm)</param>
            <message><![CDATA[confirm must be the same as the the password....]]></message> 
        </field-validator>
   </field>

   

自定义校验器


一旦创建了 validators.xml struts.xml不用自动装载default.xml

validators.xml
<?xml version="1.0" encoding="UTF-8"?>
<xml-body>
   <validators>
   	   <validator name="strandum" class="example.StrNumFeildValidator" />
   	   <validator name="requiredstring" class="com.opensymphony.xwork2.validator.validators.RequiredStringValidators" 

/>
   </validators>
</xml-body>


由sturts.xml转到自定义的校验器处进行校验处理

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE struts PUBLIC
        "-//Apache Software Foundation//DTD Struts Configuration 2.0//EN"
        "http://struts.apache.org/dtds/struts-2.0.dtd">
<struts>
 <include file="struts-default.xml" />
 <constant name="struts.devMode" value="true" />
    <package name="default" extends="struts-default">
        <action name="HelloWorld" class="example.HelloWorld">
        	<interceptor-ref name="validationWorkflowStack"><!--open the vali option-->
            <result name="success">/hello.jsp</result>        
        </action>
    </package>
</struts>



所以在自定义的校验器里可以直接配置
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE validators PUBLIC
        "-//Opensymphony Group//XWork Validators 1.0.2//EN"
        "http://www.opensymphony.com/xwork/xwork-validator-1.0.2.dtd">
        
       <validators>
    <field name="Password">
        <field-validator type="strandnum">
            <message>no null</message> 
        </field-validator>
    </field>
        <validator>
        <validator type="username">
                <param name="fieldName">passeword</param>
             <message>password empty.</message>
        <validator/>
    </validator>
  </vaildators>
分享到:
评论

相关推荐

    struts2验证框架

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

    Struts2校验框架应用

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

    struts2校验框架使用心得.txt

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

    struts2验证框架示例

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

    struts2验证框架简单示例

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

    struts2验证框架简单实例

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

    struts2 校验框架

    Struts2的校验框架基于Apache Commons Validator,提供了多种预定义的验证器类型以及自定义验证器的功能。这些验证器可以在配置文件中或代码中定义,用于检查表单字段的有效性。 #### 三、示例分析 ##### 1. 配置...

    [原]Struts2校验框架

    Struts2的验证框架主要负责在用户提交表单时,对输入数据进行检查。它通过定义验证规则,如非空、长度限制、格式验证等,来防止无效或恶意的数据进入系统。验证框架可以减少后端业务逻辑中的验证代码,提高代码的...

    struts2 验证框架

    Struts2验证框架是Java开发中的一个关键组件,主要用于处理Web应用中的用户输入验证。它提供了灵活且强大的机制,确保用户提交的数据符合预期格式和业务规则。Struts2的验证框架是基于Action类和XML配置文件的,可以...

    Struts2 验证框架

    验证框架是Struts2中的一个重要组成部分,用于处理用户输入的数据验证。在这个框架中,验证逻辑与业务逻辑分离,使得代码更易于管理和扩展。 在Struts2验证框架中,主要有两种验证方式:客户端验证和服务器端验证。...

    struts2验证框架的使用和扩展

    在Struts2中,验证框架是其核心特性之一,它负责确保用户输入的数据符合预定义的规则,从而保证数据的准确性和安全性。本文将深入探讨Struts2验证框架的使用和扩展。 1. **Struts2验证框架基础** - **Action与...

    Struts2自定义校验框架

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

    使用Struts2校验框架完成输入校验

    2、用户名只能使用数字或者字母,长度为6~20之间; 3、密码、确认密码必须是数字和字母,长度为6~20之间; 4、密码、确认密码必须相同; 5、收入必须在0.001~10000.000之间; 6、年龄必须是整数且必须在0~120...

Global site tag (gtag.js) - Google Analytics