`
kingkit
  • 浏览: 39333 次
  • 性别: Icon_minigender_1
  • 来自: 广州
文章分类
社区版块
存档分类
最新评论

Struts 2 快速入门---Struts 2.0 学习笔记

阅读更多

 Struts2.0.11.1

Kit.Liao--KingKit Studio.2009年1月28日星期三

 

总结:

1. Struts2默认编码是 UTF-8(在org.apache.struts2下的default.properties文件里面有)

1).可以在根目录下建立一个struts.properties文件加入struts.i18n.encoding=编码.

2).也可以在struts.xml加入一个 

<constant name="struts.i18n.encodingvalue="编码"/>

2. 初始化配置信息还可以web.xml里面配置struts filter的时候加入init-param

3. 注意!!!!!!!struts.xml的package里面元素的出现顺序必须按照:

 (result-types?,interceptors?,default-interceptor-ref?,default-action-ref?,default-class-ref?,global-results?,global-exception-mappings?,action*)". 

 

1. 配置web.xml

与struts1.x用Servlet不同,2.x用Filter

<filter>

        <filter-name>struts2</filter-name>

        <filter-class>org.apache.struts2.dispatcher.FilterDispatcher</filter-class>

    </filter>

 

    <filter-mapping>

        <filter-name>struts2</filter-name>

        <url-pattern>/*</url-pattern>

</filter-mapping>

 

 

加入基本的包:

编写struts.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>

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

</package>

</struts>

2. 标签库

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

 

3. 类型转换

1.1.1.1. 局部类型

第一步:继承ognl.DefaultTypeConverter重写

public Object convertValue(Map context, Object value, Class toType)方法

注: 在这个方法里面完成: 

1.客户端String--->服务器端自定义类型

2.服务器端自定义类型--->客户端String 

 

第二步:

在Action同一目录下建立  类型转换类类名-conversion.properties文件,

如:

PointAction-conversion.properties

Properties  文件内容:

属性名=转换类名

如:point=cn.com.kingkit.struts2.test.converter.PointConverter

 

1.1.1.2. 全局类型转换

在classpath目录下(src或者classes)建立一个叫

xwork-conversion.properties

内容:

类型=转换工具类名

如:

cn.com.kingkit.struts2.model.Point=cn.com.kingkit.struts2.test.converter.PointConverter

 

项目开发中一般是继承 org.apache.struts2.util.StrutsTypeConverter

4. Struts2较验

 

可以在用户自定义的Action类中写一个execute()方法,

也可以使用Struts2的验证框架: 继承ActionSupport

 ActionSupport有validate方法

 

有两种级别的Error (1.addActionError(anErrorMessage),2.addFieldError)

 

自定义验证方法:

在struts.xml的action中加入method="自定义验证方法"

自定义方法在XXAction中定义实现: 

method="abc"

Public String abc()

Public void validateAbc()

 

一般是 validate()---execute()

如果有自定义的验证方法:

先执行validate,valideXX..--->execute,xX()...

 

 

1.1.1.3. 使用较验框架(字段较验\非字段较验)

在Action实现类同一目录下加入XXX-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="userName">

        <field-validator type="requiredstring">

            <message>user name can not be blank!</message>

        </field-validator>

        <!-- 验证字符串长度 -->

        <field-validator type="stringlength">

         <param name="minLength">6</param>

         <param name="maxLength">16</param>

         <message>length of user name should be 6-16</message>

        </field-validator>

    </field>

</validators>

 

Type可以从com.opensymphony.xwork2.validator.validators包里面的default.xml看到.

Param的name可以从type对应的class里面可以看到.

 

注意: 较验框架显示的错误信息是field级别的:<s:fielderror/>

 

 

Struts2支持客户端较验(基于XX-validation.xml文件的验证信息..)

1.<s:form 的theme不能设为simple

2.Form的validate属性设为true

 

一般不使用struts2提供的客户端较验

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

分享到:
评论

相关推荐

    Strtus2学习笔记

    ### Struts2学习笔记知识点梳理 #### 一、前言及背景 - **Struts2简介**:Struts2是一...以上内容涵盖了从Struts2的准备工作、项目搭建到高级配置和常见问题解决等各个方面,希望能够帮助初学者快速入门Struts2框架。

    【张冰Struts2学习笔记】0102_第一个Struts2实例

    这篇学习笔记将带你入门Struts2,通过创建第一个实例来理解其核心概念和基本配置。 首先,了解Struts2框架的结构至关重要。Struts2的核心组件包括Action、Result、Interceptor等,它们协同工作,处理HTTP请求并呈现...

    struts学习笔记

    - **Struts2核心库**:struts2.0-core.jar - **第三方依赖**:commons-fileupload-1.2.1.jar、commons-io-1.3.2.jar、commons-logging-1.0.4.jar、xwork-2.1.2.jar、ognl-2.6.11.jar、freemarker-2.3.13.jar - **...

    Struts笔记

    ### Struts1基础知识详解 #### 一、Struts框架简介 **Struts** 是由 Apache Jakarta 项目开发的一款开源框架...它不仅提供了强大的功能支持,还具备良好的可扩展性和灵活性,非常适合初学者入门学习和实际项目开发。

    Struts2学习笔记(1)-入门教程

    在入门学习Struts2时,首先需要准备相应的开发环境。这里提到了Eclipse IDE,这是一款广泛使用的Java开发工具,特别适合Web项目的开发。同时,还需要Tomcat服务器,它是一个开源的Servlet容器,用于运行Java Web应用...

    AppFuse学习笔记(J2EE入门级框架)

    **快速入门步骤**: 1. 安装 JDK 5 或更高版本,Maven 2.0.4 或以上。 2. 安装 MySQL 5.x 数据库,以及本地 SMTP 邮件服务(或修改邮件配置)。 3. 选择合适的 archetype 创建项目。AppFuse 提供了 basic 和 modular...

    javaEE学习笔记

    ### Java/JavaEE 学习笔记关键知识点概览 #### 1. Unix 学习笔记 - **Unix 前言** - Unix 是一种多用户、多任务的操作系统,广泛应用于服务器领域。 - Unix 的历史和发展背景,以及其在现代IT基础设施中的重要性...

    SSH(Struts+spring+hibernate)整合资料

    java(1) 整合入门(spring,struts,hibernate的整合)资料(1) 中大软件工厂项目前培训资料(1) 完整笔记+源码(1) ssh(1) C#查询参数化例子(1) 学习笔记+完整源码(1) 介绍与深入(1) 学习笔记(不含整合)(1) C#(1) .CHM格式...

    Java/JavaEE 学习笔记

    Struts2.0..263 第一章 MVC Model.........................263 第二章 Struts Basic264 第三章 Action,Result & Struts2 Tag Library......................267 第四章 Data Transfer & Type Converter..273 第五...

    ibatis大全

    4. **Struts2.0+Spring+Ibatis讲义-20110304.ppt**:可能是一个教学或研讨会的幻灯片,提供了直观的视觉辅助,帮助理解三者整合的架构和设计模式。 5. **struts2+spring2+ibatis2整合.txt**:可能是整合过程中的...

    J2EE学习笔记(J2ee初学者必备手册)

    Struts2.0..263 第一章 MVC Model.........................263 第二章 Struts Basic264 第三章 Action,Result & Struts2 Tag Library......................267 第四章 Data Transfer & Type Converter..273 第五...

    appfuse 学习笔记

    AppFuse 是一个开源项目,旨在加速和简化J2EE应用程序的开发流程。由Matt Raible设计,它作为一...通过深入阅读和实践AppFuse的学习笔记,开发者可以逐步掌握其核心功能,并将其应用到实际项目中,提升开发质量和效率。

    工作流Activiti5学习总结

    这个学习总结将围绕着Activiti5的核心概念、快速入门、以及与SSH(Struts2、Spring、Hibernate)框架的整合进行详细介绍。 一、Activiti5核心概念 1. **BPMN 2.0支持**:Activiti5遵循Business Process Modeling ...

    Spring2.5、3.0、3.1轻松入门+中级+高级教程14合一

    - **Spring+hibernate+struts2整合文档**: 这个文档会讨论如何将Spring与Hibernate ORM框架和Struts2 MVC框架整合,创建一个完整的MVC应用。 - **Spring教程.docx**: 这是一份综合性的Spring教程,可能涵盖了从基础...

    javaweb笔记+代码(狂神说java)

    "javaweb笔记+代码(狂神说java)"可能是一份由知名讲师“狂神”编写的教程资料,包含了学习JavaWeb开发的知识点以及相应的实践代码。 在JavaWeb开发中,以下是一些关键知识点: 1. **Servlet**: Servlet是Java Web...

Global site tag (gtag.js) - Google Analytics