`
zhaoshijie
  • 浏览: 2259930 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

Struts2中使用validation框架验证数据

阅读更多
Struts2中使用validation框架验证数据

Struts2提供了validation框架,可以使用该框架进行数据验证,和Struts1.x相同,也是通过xml文件的形式进行配置.

需要commons-validator.jar支持.







服务器端验证:

1.  创建action----ValidateAction.java



package com.validation.action;


import com.opensymphony.xwork2.ActionSupport;


public class ValidateAction extends ActionSupport {
   
    private String name; //必须输入
    private int age;     //必须介于12-25之间
   
    public String getName() {
       return name;
    }
    public void setName(String name) {
       this.name = name;
    }
    public int getAge() {
       return age;
    }
    public void setAge(int age) {
       this.age = age;
    }
}








2.配置struts.xml文件
<struts>
    <constant name="struts.enable.DynamicMethodInvocation" value="false" />

    <constant name="struts.devMode" value="true" />



    <package name="default" namespace="/" extends="struts-default">

       <default-action-ref name="index" />

       <action name="Validate" class="com.validation.action.ValidateAction">

           <!-- 注意:如果使用了验证框架,就必须有一个name为input的返回结果 -->
           <result name="input">/jsp/user_info.jsp</result>

           <result>/jsp/user_info.jsp</result>
       </action>
    </package>
</struts>









3.编写验证规则配置文件

这是一个基于XML的配置文件,和struts1.x中的validator框架的验证规则配置文件类似,但一般放到和要验证的.class文件在同一目录下,而且配置文件名必须使用如下两个规则中的一个来命名:

          <ActionClassName>-validation.xml

          <ActionClassName>-<ActionAliasName>-validation.xml

其中<ActionAliasName>就算struts.xml文件中的<action>的name属性,这里用第一种命名规则,所以文件名是ValidateAction-validation.xml。内容如下:

<!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>
    <field name="age">

        <field-validator type="int">

            <param name="min">12</param>

            <param name="max">25</param>

            <message>年龄必须介于12-25之间</message>
        </field-validator>
    </field>
</validators>


其他验证规则(type属性的取值)如下:
<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"/></validators>



4.jsp页面----user_info.jsp

<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>

<%@ taglib prefix="s" uri="/struts-tags"%>



<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">

<html>
    <head>
       <title>ValidationTest</title>
       <link rel="stylesheet" href="../style.css" type="text/css"></link>

    </head>


    <body>

       <s:form action="Validate">

           <s:textfield name="name" label="姓名" />

           <br />

           <s:textfield name="age" label="年龄" />

           <br />

           <s:submit />

       </s:form>
    </body>
</html>


访问如下路径,点击提交



触发验证效果....




 





客户端验证:只需要在form中加入validate属性,值为true即可.



<s:form action="Validate" validate="true">

    ......

</s:form>
分享到:
评论

相关推荐

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

    只需添加相应的依赖,并在配置中启用,即可在Struts2中使用Hibernate Validator的全部功能。 八、WebRoot目录和src目录 在给定的压缩包文件中,`src`目录可能包含了Action类和其他相关Java源代码,而`WebRoot`目录...

    Struts2中Validation数据验证框架教程

    在Struts2中,Validation框架是用于处理数据验证的重要组件,它允许开发者在用户输入提交到服务器之前或之后进行验证,确保数据的准确性和完整性。下面将详细解释Struts2中的Validation框架及其在前后台验证中的应用...

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

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

    struts2验证框架

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

    Struts1.2中的validation验证框架的实现步骤

    ### Struts1.2中的Validation验证框架实现步骤详解 #### 一、环境配置与准备工作 在Struts1.2框架中实现验证功能首先需要完成环境配置。这包括添加必要的库文件(JAR包)、配置XML文件等。 ##### 1.1 添加...

    struts验证框架-validation的验证框架

    Struts验证框架,作为Struts框架的一个重要组成部分,主要用于对用户输入的数据进行合法性检查,确保数据符合预期的格式和约束条件。这一机制不仅提升了应用程序的健壮性,还增强了用户体验,避免了因非法数据导致的...

    Struts Validation框架浅尝

    ### Struts Validation框架浅尝 #### Struts Validation框架概述 Struts Validation框架是Apache Struts...总的来说,Struts Validation框架为开发者提供了一套灵活且强大的工具,帮助他们在Web应用中实施数据验证。

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

    首先,我们来探讨"Struts2中的validation_多国语言版",这是Struts2的数据校验功能。Struts2提供了一种灵活的机制来验证用户输入,通过在Action类中定义校验规则或使用XML配置文件。当用户提交表单时,框架会自动...

    struts的validation验证框架源码

    - Struts 2中,Validation框架被更强大的Struts 2拦截器机制取代,提供了更灵活的验证方式和更丰富的功能。 深入研究Struts的Validation框架源码可以帮助开发者理解其内部工作原理,以便更好地自定义验证规则、...

    Struts2中使用验证框架的简单例子

    本篇文章将深入探讨如何在Struts2中使用验证框架,并通过一个简单的例子来演示其工作原理。 ### 一、Struts2验证框架概述 Struts2的验证框架主要负责在用户提交表单后验证输入数据。它可以基于XML配置文件或注解...

    struts2验证框架示例

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

    Struts2_Validation

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

    Struts使用validation框架来实现校验,4种以上的校验规则

    在Struts中,Validation框架是用于处理用户输入验证的重要组件,它可以确保用户提交的数据符合预定义的规则,从而提高应用程序的安全性和用户体验。 在创建一个注册模块时,通常需要对用户的输入数据进行严格的验证...

    Struts2框架验证_validation_常见类型验证模板(包含字段和非字段方式)

    ### Struts2框架验证——常见类型验证模板解析 #### 一、引言 在Web应用开发过程中,数据验证是确保应用程序稳定性和安全性的重要环节之一。Struts2作为一款流行的Java Web应用框架,提供了丰富的验证机制来帮助...

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

    在Struts2中,表单验证是一项重要的功能,它确保了用户输入的数据符合预期的格式和范围,从而提高了应用的安全性和用户体验。本文将详细介绍Struts2验证框架的配置方法以及validation.xml文件中常用的验证规则。 ##...

    struts2验证框架简单实例

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

    struts中使用validator验证框架

    在本文中,我们将深入探讨如何在Struts中使用Validator框架,并通过三个逐步进阶的实例来理解其工作原理。 首先,我们来看第一个实例——Validator_Struct_01。在这个基础案例中,我们将了解如何设置基本的...

    struts2验证框架简单示例

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

Global site tag (gtag.js) - Google Analytics