Struts2 Package
package 元素的所有属性及对应功能:
Attribute | Required | Description |
name | yes | key to for other packages to reference ---包名称,用来让别的包继承时使用不能有重复 |
extends | no | inherits package behavior of the package it extends -----当前包所要继承的父包,继承之后,当前包拥有父包中所定义的任意类、拦截器等 |
namespace | no | 用于区分包中相同的类 |
abstract | no | declares package to be abstract (no action configurations required in package)定义当前包为一个抽象的包也就是说不能有action元素在当前包中 |
例子:
假如我有以下的配置段落
<struts>
<package name="p1" extends="struts-default">
<action name="login" class="com.example.action.Login">
<result>/success.jsp</result>
</action>
<action name="login1" class="com.example.action.Login">
<result>/success.jsp</result>
</action>
</package>
<package name="p2" extends="struts-default" namespace="/testNameSpace">
<action name="login" class="com.example.action.Login">
<result>/success.jsp</result>
</action>
</package>
</struts>
说明:
a、 包p1没有定义namespace,说明p1用的是默认空间""
现在有下面的请求:
1、/工程名/login.action
------这个请求对应p1包下的action name=login
2、/工程名/testNameSpace/login.action
-----这个请求对应p2包下的action name=login
3、/工程名/testNameSpace/login1.action
----这个请求是请求p2包下的信息的,如果struts在检索了p2包下的所有action后没有检索到当前请求的login1,这时struts会检索前一个命名空间,这里是默认空间下是否有当前请求,检查发现存在login1就得到当前检索
这里我有个个人的建议:
无论你的namespace配置或者没配置,也无论配置啥样,你在写跳转的url的时候请你也把
‘/工程名/’带上,写成这样:/工程名/命名空间1/命名空间2/actionName.action这样写能保证路径的正确性,当然如果你在写跳转的时候不发晕,可以视你的配置情况加或者不加这个
最新文章
- class.c 添加中文注释(2)
- objective-c字符串笔记
- [STL][C++]MAP
- android studio获取SHA1
- [转]Freemarker数据类型转换
- DataGrid中取HyperLinkColumn列的值,处理DataGrid中绑定的特殊字符
- 浏览器中的XML与JavaScript
- C++ STL之vector常用指令
- 1)③爬取网易It方面部分新闻
- Linux下多线程查看工具(pstree、ps、pstack) (转)
- 一个经典的js中关于块级作用域和声明提升的问题
- android 之 java环境部署
- 转载——yum源的超级简单配置
- Python爬虫入门教程 61-100 写个爬虫碰到反爬了,动手破坏它!
- 用SQL将JSON数据输出表值数据
- PYthon3:简单几步实现冒泡排序
- Memcached和Memcache安装(64位win7)[z]
- LoadRunner录制脚本时没有响应——无法启动浏览器问题总结
- 关于vue2.0 cnpm 镜像安装
- TCP/IP详解 卷1 第十九章 TCP的交互数据流
热门文章
- [Solved] install Gentoo in VBox: network interface eth0 does not exist
- Translation perface: <;<;Professional JavaScript for Web Developers, 3rd Edition>;>;
- XAML 概述一
- Azure IaaS for IT Pros Online Event 总结
- EWOULDBLOCK = EAGAIN
- virtualbox centos安装增强工具
- spring-mysqlclient开源了
- 从Keil 4升级到Keil 5的工程,想返回来用Keil 4打开
- linux设备驱动模型
- oracle 常用SQL语法手册