`
toxy
  • 浏览: 71980 次
  • 性别: Icon_minigender_1
  • 来自: 云南.昆明
社区版块
存档分类
最新评论

Struts2学习之旅(一)

阅读更多
一、Struts2配置文件
    Struts2相关的配置文件有web.xml,struts.xml,struts.properties,
struts-default.xml,velocity.properties,struts-default.vm。其中web.xml,struts.xml是必须的,其它的配置文件可选择。它们在web应用中的功能如下:
    web.xml:包含所有必须的框架组件的web部署描述符。
    Struts.xml:配置包含result/view类型、action映射、拦截器等的Struts2的主要配置文件。
    Struts.properties:配置struts2的框架属性。
    Struts-default.xml:在文件在struts-action-x.x.jar中,该文件是应该被包含在struts.xml中的缺省配置。
    Welocity.properties:重写了velocity的配置文件。
    Struts-default.vm:相对于velocity的缺省配置。

二、Struts2配置元素
    Struts2核心的配置文件是缺省的struts.xml。
必要的时候,缺省的配置文件可以包含其它的配置文件;struts文件可以放入jar中,并自动插入应用程序,这样每个模块可以包含自己的配置文件并自动配置。在Freemarker和Velocity模块中,模板也能从classpath中加载,所以整个模块可以作为一个简单的jar文件被包含。
    Struts.xml配置文件可以包含Interceptor、Action类和Results。
    Struts.xml配置元素说明:

1、Packages
   Packages:packages把actions、results、results types、interceptors
和interceptor-stacks组装到一个逻辑单元中,从概念上讲,packages就像一个对象,可以被其它子包从写,而且可以拥有自己独立的部分。
Name属性是packages的必填元素,它作为一个关键字被后边的包引用;extends元素是可选的,它允许包扩展一个和多个前边定义的包。注意,
struts.xml文件是至上而下处理的,所有被扩展的包,需要在扩展包前定义。
    Abstract元素是可选的,它可以申明一个不包含actions的配置文件。

2、Namespace
    Namespace元素把actions细分到逻辑模块,每一个namespace都有自己的
前缀(prefix),namespace避免了action之间的名字冲突,当前缀出现在URI中时,这些标签都是名字空间感知的(“namespace aware”),所以这些namespace prefix不必嵌入到表单或连接中。
    Default的namespace是一个空字符串“”,如果在指定的配置文件中,没有找到action,缺省的namespace也会被查找。Local/global策略允许应用程序在action “extends”元素层次结构之外,有全局的action配置。缺省的namespace也可以不在package中申明。
    Namespace prefix可以注册为java的申明式安全,以确保授权的用户才能访问namespace的资源。
    Root namespace(“/”)也被支持,root就是当直接请求context path的时候的namespace。

[个人理解:namespace的用法就像struts1.x中的path一样,只不过它在package中什么路径,而在action中申明action名子罢了]

3、Include
   Include元素使得框架能应用“divide and conquer”来配置文件。被include
的每个配置文件必须和struts.xml有一样的格式,一个大的项目可以采用这样方式来组织程序模块。
   Include元素也可以和package交替出现,框架将按照顺序加载配置文件。

4、Interceptor configuration
   Interceptor允许应用程序在Action方法执行前后定义执行代码,
    Interceptor在应用程序开发中十分重要,对于Interceptor有许多用例,如validation, property population, security, logging, 和profiling。
    Interceptor被定义为一个Java类,Interceptor也可以组装成Interceptor-stack,他们将按照定义的顺序执行。
    在struts-default.xml中定义了一些缺省的Interceptor-stack,以便框架能很好地运行。

5、Action
    Action是框架的“工作单元”。Action可以指定一个Interceptor-stack、
一序列的return type和一序列的异常处理,但只有name属性是必须的。
  
分享到:
评论
1 楼 chenhisn 2011-08-02  

相关推荐

    struts 2 之旅 - 简单的程序 登陆

    "Struts 2 之旅 - 简单的程序 登陆"是一个基础教程,旨在帮助初学者理解如何在Struts 2框架中实现用户登录功能。 首先,我们需要了解Struts 2的核心概念。Struts 2框架的主要组件包括Action类、ActionMapping、...

    Struts2学习案例(拦截器)

    在本学习案例中,重点在于Struts2的拦截器(Interceptor)功能,这是Struts2的核心特性之一,它允许开发者在Action执行前后进行自定义处理,实现了灵活的业务逻辑控制和增强的功能。 首先,我们来理解一下什么是...

    Struts2 in action(struts2实战)

    Struts2是Java Web开发中的一个强大且灵活的MVC框架,它在处理Web应用程序的结构和控制逻辑方面表现出色。...无论你是初学者还是经验丰富的开发者,这本书都将为你的Java Web开发之旅提供宝贵的指导。

    Struts2小demo

    这个"Struts2小demo"是一个基础的学习资源,旨在帮助开发者开启SSH(Spring、Struts2、Hibernate)集成开发之旅。 SSH是Java企业级开发中常用的三大开源框架,它们分别是Spring、Struts2和Hibernate。Spring提供了...

    Struts2入门案例 实现简单的Struts2入门jar包.rar

    在开始Struts2的学习之旅之前,我们需要理解一些基本概念: 1. **Action类**:在Struts2中,Action类是业务逻辑的主要载体,负责处理用户的请求。每个Action类对应一个特定的URL请求,处理完业务逻辑后,会返回一个...

    struts2入门案例

    Struts2是一个强大的Java web开发框架,它基于Model-View-Controller(MVC)设计模式,为开发者提供了构建可维护性、可扩展性良好的应用程序的工具。...希望这个案例能帮助你开启Struts2的探索之旅!

    struts 2 in action

    Struts 2是一个强大的MVC(Model-View-Controller)框架,广泛应用于Java Web...这两本书结合阅读,将为读者提供一个全面而深入的Struts 2学习之旅,从基础到高级,从理论到实践,有助于提升Java Web开发的专业能力。

    Struts 之旅 - 验证vilidator

    "Struts之旅 - 验证validator"是关于如何在Struts应用中实现数据验证的一个专题,我们将探讨三种不同的验证方式:XML、Action以及Form。 首先,让我们从XML验证开始。在`vilidator by xml.zip`中,我们可能找到了`...

    Struts快速学习指南

    Struts是Java Web开发中的一个开源框架,由Apache软件基金会维护。它主要基于Model-View-Controller(MVC)设计模式,旨在简化企业级应用程序的开发...这份“Struts快速学习指南”将是你踏上Struts之旅的重要参考资料。

    struts2简要教程

    Struts2是一个强大的Java web应用程序框架,用于构建和维护可扩展、结构清晰的MVC(模型-视图-控制器)架构的应用程序。本教程旨在帮助开发者快速理解和...如果你已经准备好,就让我们一起开始Struts2的探索之旅吧!

    Struts2_0100_Hell0

    Struts2是Apache软件基金会开发的一个开源MVC框架,它基于Model-View-Controller(模型-视图-控制器)设计模式,旨在简化企业级..."Struts2_0100_Hell0"项目将引导你进入这个强大的框架世界,开启你的Struts2学习之旅。

    struts2快速入门实战文档

    本快速入门实战文档将引领你一步步地在Eclipse集成开发环境中搭建Struts2环境,开启你的Struts2学习之旅。 首先,你需要了解Struts2的核心概念。Struts2的核心组件包括Action、Result、Interceptor和Value Stack。...

    Struts 2 自学之路: 1 准备工作及helloworld

    本文将引导你踏上Struts 2的自学之旅,从准备工作开始,逐步介绍如何创建并运行你的第一个“Hello, World!”程序。 ### 1. Struts 2 框架简介 Struts 2是Apache软件基金会的一个开源项目,它是基于MVC(Model-View-...

    struts2

    ### Struts2与Spring整合应用开发详解 #### 引言 在探讨Struts2与Spring框架的整合之前,我们先简要回顾一下Struts2框架的由来与特性。Struts2作为Struts1的升级版,...希望本文能为您的学习之旅提供有价值的参考。

    struts2 实例

    Struts2是一个强大的Java web应用程序开发框架,它基于MVC(Model-View-Controller)设计模式,极大地简化了Java EE应用程序的开发工作。...所以,开始你的Struts2之旅吧,相信你将在过程中收获颇丰。

    STRUTS 指南(chm)

    Struts是Apache软件基金会旗下的一款开源Java框架,主要用于构建企业级Web应用程序。这款框架的核心是MVC(Model-View-Controller)...这个指南作为入门起点,将引导你步入Struts的世界,开启你的Java Web开发之旅。

    Struts2 web2.0 Projects API chm+pdf 中英文兼有

    Struts2是一个强大的Java web应用程序框架,用于构建和管理MVC(模型-视图-控制器)架构的应用。它是在原有的Struts1框架基础上...无论你是初学者还是有经验的开发者,这套资料都能为你的Struts2之旅提供有力的支持。

    Struts2.应用开发详解(第二讲).rar

    Struts2是一个强大的Java Web应用程序开发框架,基于Model-View-Controller(MVC)设计模式,旨在简化企业级Web应用的开发过程。...后续的教程将继续深入讨论更多高级特性和实战案例,为你的Struts2之旅提供全面指导。

    Struts_2.0从入门到精通

    在开始Struts2.0的学习之旅前,首要任务是搭建开发和运行环境。这一步骤至关重要,它包括从Apache官方网站下载Struts2.0包,以及在Eclipse等IDE中创建新的Web项目。通过将Struts2.0的库文件添加到项目中,确保所有的...

Global site tag (gtag.js) - Google Analytics