`
gsvince
  • 浏览: 54691 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
社区版块
存档分类
最新评论

Struts入门-02

阅读更多
validator 验证框架

六种类的关系:

1:普通form(从下向上继承)
ActionForm  //不用验证框架作验证            
|
|
validatorForm //使用验证框架时必须继承它,但只能做同一种验证(即只提交一个按键时的验证)
|
|
validatorActionForm //使用验证框架验证时,可以更为精确的去处理业务逻辑,针对的是不同的按键的path(即可以作不同的验证,如,既可以验证是否为空,又可以同时验证是否小于几位)

2:动态form(从下向上继承)
DynaActionForm              
  |
  |
DynaValidatorForm
  |
  |
DynaValidatorActionForm


我们自己的form 必须继承validatorForm 或validatorActionForm 或DynavalidatorForm 或DynavalidatorActionForm

对于 validatorForm 和DynavalidatorForm 是针对form的验证
对于 validatorActionForm 和DynavalidatorActionForm 是针对path的验证

!!!!用struts1.1版本,struts1.2版本validator验证框架有问题

步骤:

1:创建form,继承validatorForm 或validatorActionForm 或DynavalidatorForm 或DynavalidatorActionForm// 把form中的validate()方法去掉(否则可能出现异常)

2:在struts-config.xml文件中 注册validator验证框架
  <plug-in className="org.apache.struts.validator.ValidatorPlugIn">
  <set-property property="pathnames" value="/WEB-INF/validator-rules.xml,/WEB-INF/validation.xml"/>
</plug-in>
3:在validation.xml文件中指定哪个form的哪些属性做什么验证


<form name="logForm">//对于validatorForm 和DynavalidatorForm 是form的逻辑名,对于 validatorActionForm 和DynavalidatorActionForm 是path的内容
         <field
    property="name"//要验证的属性
           depends="required,mask,minlength">//做哪些验证,mask指定必须为几位
           <arg0 key="label.name"/>
   <arg1 name="minlength" key="${var:minlength}" resource="false"/>//设置错误信息
<var>
<var-name>mask</var-name>
<var-value>^[a-zA-Z]*$</var-value>//用正则表达式表示只能是字符
        </var>
    <var>
               <var-name>minlength</var-name>//最小长度
               <var-value>7</var-value>
           </var>   
         </field>            
        
         <field
           property="date"
           depends="required,date">//日期的验证
           <arg0 key="label.date"/>
         </field>            
      </form>

4:在applicationResource.properties文件中加上错误信息
//验证框架用的信息,可以用中文转化
errors.required={0} is required.
   errors.minlength={0} can not be less than {1} characters.
   errors.maxlength={0} can not be greater than {1} characters.
   errors.invalid={0} is invalid.

  errors.byte={0} must be a byte.
   errors.short={0} must be a short.
  errors.integer={0} must be an integer.
  errors.long={0} must be a long.
   errors.float={0} must be a float.
  errors.double={0} must be a double.

   errors.date={0} is not a date.
   errors.range={0} is not in the range {1} through {2}.
   errors.creditcard={0} is an invalid credit card number.
   errors.email={0} is an invalid e-mail address.
//自己用到的信息
   label.name=name
   label.password=password
   label.phone=phone
   label.email =email

注意:运行前检查一下validation.xml和applicationResource.properties文件文件有没有部署到tomcat下


分享到:
评论

相关推荐

    struts2-tags-文档.rar

    对于初学者,"struts2.chm"提供了入门指导;对于有一定经验的开发者,"struts2-tags-API.chm"和"struts2 2.chm"将帮助他们更好地利用Struts2的高级特性,提升开发效率。总的来说,这个压缩包是学习和开发Struts2应用...

    struts2-struts入门

    在入门Struts2时,首先需要了解其基本概念和目录结构。Struts2的框架设计理念是提供一个半成品,即已经包含了大部分通用功能,开发者只需要关注与业务相关的部分。在提供的版本struts-2.3.15.3中,有两个示例应用:...

    struts2-blank

    "struts2-blank"项目是一个基础的Struts2示例代码,可以帮助初学者快速理解和入门Struts2框架。 在Struts2框架中,核心组件包括Action、Interceptor、Result、ValueStack等。Action是业务逻辑的执行者,Interceptor...

    Struts2-入门学习

    这个"Struts2-入门学习"的主题将引导你了解Struts2的基础知识,包括其架构、核心组件、配置以及如何在实际项目中应用。 Struts2的核心组件包括: 1. **Filter Dispatcher**:这是Struts2框架的入口点,它是一个...

    struts2-例子

    在这个"struts2-例子"压缩包中,我们主要关注的是一个名为"struts2-blank"的项目,这是一个基础的、空白的Struts2应用模板,用于新手快速入门和理解框架的基本工作原理。 首先,Struts2的核心在于Action类,它是...

    struts-2.3.14-pro

    这些示例可以帮助开发者快速入门,了解如何在实际项目中应用Struts 2框架。 6. **学习与开发**: 对于开发者来说,熟悉Struts 2.3.14-Pro意味着要掌握Action类、配置文件(struts.xml)、拦截器、结果类型、动态...

    struts2--1.入门程序

    入门程序"应该是针对初学者设计的一系列教程,旨在帮助开发者快速理解并掌握Struts2的基础用法。 在Java Web开发中,Struts2框架提供了良好的架构模式,可以有效地组织代码,提高开发效率,并且它支持多种视图技术...

    struts2-----之一

    在本学习资料中,初学者将能深入理解Struts2的核心概念和工作原理,从而轻松入门。 Struts2框架的核心功能包括: 1. **请求分发**:Struts2通过Action类来处理HTTP请求。每个Action类对应一个业务逻辑,接收请求后...

    struts2.5.16-jar包

    在"Struts2 入门\struts2基本jar包"目录下,你可以找到一组基础的jar包,这些是学习和搭建Struts2入门级应用所需的基本组件。它们包括了处理HTTP请求、映射请求到Action、视图渲染等功能的关键类。通过这些基本jar包...

    struts入门例子-eclipse搭建

    这个入门例子是专为初学者设计的,旨在帮助理解如何在Eclipse集成开发环境中配置和运行一个基本的Struts2项目。在Eclipse中搭建Struts2环境涉及多个步骤,包括设置JDK、安装插件、创建项目以及配置相应的库和文件。 ...

    struts2--国际化入门

    本教程将引导你入门Struts2的国际化功能,这是一项允许应用程序支持多种语言的重要特性。 在Struts2中实现国际化,首先你需要创建资源文件,这些文件通常以`.properties`为扩展名,例如`messages.properties`和`...

    struts-2.3.16.1-docs.zip

    1. **快速入门**:这通常是一份简明教程,帮助开发者快速了解Struts2的基本概念和配置,如Action、Result、Interceptor等,并指导如何搭建第一个运行的Struts2应用。 2. **使用文档**:这部分详细介绍了如何在实际...

    Struts1-2和JSTL帮助文档及快书入门图书

    Struts1-2 和JSTL 帮助文档以及Struts入门的图书,可以轻松学习Struts,及Struts和Jstl标签库

    struts2-docs

    11. ** strut2-docs 中的详细内容**:压缩包中的文档可能包括框架概述、快速入门指南、配置参考、API文档、插件介绍、示例代码和最佳实践等多个部分,为开发者提供全方位的学习材料。 通过阅读这些文档,开发者能够...

    starting-struts2-chinese.rar

    这个"starting-struts2-chinese.rar"压缩包文件包含了一份中文版的"starting-struts2-chinese.pdf"文档,很显然是为帮助初学者理解和入门Struts2框架而准备的。 Struts2的核心是模型-视图-控制器(MVC)设计模式,...

    struts-2.5.16升级jar包.zip

    此外,描述中提到的"Struts2 入门\struts2基本jar包"目录,通常会包含一些基础的入门示例和教程所需的jar包,这些可能包括了用于演示基本功能和配置的简化版本,如简单的Action类、配置文件、以及其他必要的依赖。...

    struts-2.3.12.rar

    总之,"struts-2.3.12.rar"是一个宝贵的资源,对于想要学习或深入了解Struts 2框架的开发者来说,无论是入门还是深入研究,都有极大的价值。通过这个压缩包,你可以全面地了解并掌握Struts 2的方方面面,提升你的Web...

    struts2-easyui.

    在"struts2-easyui"的例子中,我们看到的是一个基础的快速入门教程,它演示了如何将这两个技术整合在一起,实现数据的增删改查功能。下面将详细解释这个组合的应用场景、工作原理以及相关的知识点。 1. **Struts2...

    jcaptcha4struts2-demo-2.0.1.zip_DEMO_JCaptcha4Struts2.jar_jcaptc

    这个DEMO旨在帮助开发者快速理解和应用Jcaptcha4Struts2,为初学者提供了一个基础入门级的学习资源。 Jcaptcha4Struts2是基于Jcaptcha(Just Another CAPTCHA)的Struts2插件,它将Jcaptcha的功能无缝集成到Struts2...

Global site tag (gtag.js) - Google Analytics