struts2提供了命名空间的功能,主要是为了处理同一个WEB应用中包含同名Action的情形。struts2以命名空间的方式来管理Action,同一个命名空间里不能有同名的Action,不同的命名空间里可以有同名的Action.

struts2不支持为单独的Action设置命名空间,而是通过namespace属性来为包下的所有Action指定共同的命名空间。如果配置<package.../>时没有指定namespace属性,则该包下的所有Action处于默认的包空间下。

<?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>
<!--配置名为get的包,该包继承了Struts2的默认包,指定该包的命名空间为/book --!>
<package name="get" namespace="/book" extends="struts-default">
<action name="getBooks" class="cn.ss.GetBookAction" method="execute">
<result name="success">/WEB-INF/JspPage/chapter1/HelloWorld.jsp</result>
</action>
</package>
</struts> 当某个包指定了命名空间后,该包下所有的Action处理的URL应该是命名空间+Action名,以上面例子为例,该包下包含了名为getBooks的Action,则该Action处理的URL为:
http://localhost:8080/namespace/book/getBooks.action
//8080是服务器的端口,namespace是应用名称,book是该Action所在包对应的命名空间,而getBooks是Action名

struts2的包和命名空间的更多相关文章

  1. Struts2学习笔记 - namespace命名空间

    默认的命名空间“ namespace="" ”. 根命名空间 “ namespace="/" ”. <package name="test&qu ...

  2. Struts2基本包作用详解

    asm-3.3.jar作用:操作java字节码的类库包路径及主要类:未提供 asm-commons-3.3.jar作用:提供了基于事件的表现形式包路径及主要类:未提供 asm-tree-3.3.jar ...

  3. java:Springmvc框架1(基本配置,注解配置,转换器引入)

    1.springmvc01:(基本配置) web.xml: <?xml version="1.0" encoding="UTF-8"?> <w ...

  4. Maven整合Spring3.0+Mybatis3.2+Struts2.3+查找坐标+jar包依赖(五)

    依赖传递 只添加了一个struts2-core依赖,发现项目中出现了很多jar,这种情况 叫 依赖传递

  5. struts2学习笔记之九:struts2的命名空间

    struts2的命名空间适用于多人开发,根据不同模块命名不同的命名空间,方便开发和管理 struts2如果没有配置命名空间,默认命名空间为"/",Struts2中Action的完整 ...

  6. Maven使用-利用Maven引入相关包(Struts2)

    根据上一篇的项目搭建,接下来引入需要使用Struts2相关包 1,如何利用maven往项目中引入包? maven就像一个导包助手一样,让它知道去哪里拿什么,他就会自动完成需要的包的搬运工作. (1), ...

  7. struts2必要的包

    想正常使用struts2.1.6,至少需要如下6 个jar包: struts2-core-2.1.6.jar freemarker-2.3.13.jar commons-logging-1.0.4.j ...

  8. 13、零配置Struts2开发

    Convention 插件 从 Struts 2.1 开始, Struts 可以使用 Convention 插件来支持零配置: Convention 插件完全抛弃配置信息, 不仅不需要使用 strut ...

  9. Struts2初始(一)

    1.过滤器:org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter位置:在struts2的核心包struts2-co ...

随机推荐

  1. iOS开发——UI篇Swift篇&UIActivityIndicatorView

    UIActivityIndicatorView override func viewDidLoad() { super.viewDidLoad() titleLabel.text = titleStr ...

  2. install root certificate failed, Please run as administrator/root/sudo

    在钥匙窜中导入  证书就可以了

  3. oc-14-对象方法调用类方法

    Person.h #import <Foundation/Foundation.h> @interface Person : NSObject { @public int _age; fl ...

  4. 云服务器 ECS Linux 系统 CPU 占用率较高问题排查思路

    https://help.aliyun.com/knowledge_detail/41225.html?spm=5176.7841174.2.2.ifP9Sc 注意:本文相关配置及说明已在 CentO ...

  5. WinForm的延时加载控件概述

    这篇文章主要介绍了WinForm的延时加载控件,很实用的技巧,在C#程序设计中有着比较广泛的应用,需要的朋友可以参考下   本文主要针对WinForm的延迟加载在常用控件的实现做简单的描述.在进行C# ...

  6. HttpSolrServer-采用静态工厂方法,创建HttpSolrServer单实例

    HttpSolrServer线程安全,如果使用下面构造器,必须对所有的请求重用相同的实例.如果实例在运行中创建的,它可能会导致连接泄漏.推荐的做法就是保持每个solr服务url的HttpSolrSer ...

  7. [Arduino] 基于Xbee Pro和网络技术的智能公交系统设计

    转自:http://www.21ic.com/app/rf/201112/99474.htm 引言 公共交通具有个体交通无法比拟的强大优势,优先发展城市公共交通系统是解决大.中城市交通问题的最佳途径. ...

  8. Android(java)学习笔记61:多线程程序的引入

  9. 源自梦想 自定义ViewGroup的整理_1

    今天说说自定义控件,稍微偏底层一点的东西.今天的主要任务是自己完全写代码,写一个ViewGroup,实现一个类似ViewPager这样的一个功能. 大家自定义View肯定写过,不过估计写的也不多.等大 ...

  10. Oracle基础(四) 用户管理

    一.用户 当创建一个数据实例时,Oracle会创建一些默认的数据库用户,如SYS,SYSTEM和SCOTT等用户.SYS和SYSTEM用户都是ORACLE的系统用户.而Scott用户是Oracle数据 ...