您的位置:首页 > 编程语言 > Java开发

Struts2 学习笔记 —— 02 —— Namespace

2014-01-10 16:08 543 查看
Struts到底干什么用的 —— 把请求跟视图分开

Namespace是命名空间

namespace决定了action的访问路径,默认为"",可以接收所有路径的action

namespace可以写为/,或者/***,或者/***/***,

对应的action的访问路径为/index.action,/***/index.action,或者/***/***/index.action

namespace最好也用模块来进行命名

创建struts项目,配置web.xml(配置方法见01

配置struts.xml文件

<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE struts PUBLIC
"-//Apache Software Foundation//DTD Struts Configuration 2.3//EN"
"http://struts.apache.org/dtds/struts-2.3.dtd">

<struts>

<constant name="struts.devMode" value="true" />

<package name="front" namespace="/front" extends="struts-default">

<action name="index">
<result name="success">
/Namespace.jsp
</result>
</action>
</package>

</struts>


说明:

1、namespace写的是什么,就在访问时在路径加上它

namespace必须用“/”开头

2、namespace和package开发时都用模块管理,以区分不用模块下的同名action

3、凡是name="success"的action,这个name="success"可以省略

4、namespace可以为空(相当于namespace省略)

这时无论在任何路径下访问index.action,都可以访问这个namespace为空的action

即只要找到一个action,并且没有找到精确的package与之对应,则交由本namespace处理

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

<action name="index">
<result name="success">
/NamespaceAll.jsp
</result>
</action>
</package>


上面配置了一个namespace为空的package,则随便输入一个action为index.action的路径,都能访问到这个界面



注意一个点:

当拷贝项目时,修改项目名称后直接运行在tomcat上会发现无法直接访问,而拷贝之前的路径能够访问

原因是项目拷贝时要修改一个地方:

在项目上点击右键,选择Properties,修改Context root为拷贝后项目的名称

不同IDE略有不同:

Eclipse



MyEclipse

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: