Struts2 Namespace_命名空间

Posted 邵江莉

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Struts2 Namespace_命名空间相关的知识,希望对你有一定的参考价值。

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

  namespace可以写为/,或者/xxx,或者/xxx/yyy,对应的action访问路径为/index.action,/xxx/index.action,或者/xxx/yyy/index.action

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

 

1.新建项目web project:Struts2_Namespace

2.引入struts2的jar包

3.struts.xml

  代码:    

 1 <?xml version="1.0" encoding="UTF-8" ?>
 2 <!DOCTYPE struts PUBLIC
 3     "-//Apache Software Foundation//DTD Struts Configuration 2.0//EN"
 4     "http://struts.apache.org/dtds/struts-2.0.dtd">
 5 
 6 <struts>
 7     <!-- 
 8     <constant name="struts.enable.DynamicMethodInvocation" value="false" />
 9     
10 
11     <include file="example.xml"/>
12 
13 
14 
15     <package name="default" namespace="/" extends="struts-default">
16         <default-action-ref name="index" />
17         <action name="index">
18             <result type="redirectAction">
19                 <param name="actionName">HelloWorld</param>
20                 <param name="namespace">/example</param>
21             </result>
22         </action>
23     </package>
24      -->
25     <!-- Add packages here -->
26     <constant name="struts.devMode" value="true" />
27     <package name="front" extends="struts-default" namespace="/front">
28         <action name="index">
29             <result>/Namespace.jsp</result>
30         </action>
31     </package>
32     
33      <package name="main" extends="struts-default" namespace="">
34         <action name="index">
35             <result>/Namespace.jsp</result>
36         </action>
37     </package>
38 
39 </struts>
struts.xml

===========================================================================

注解:

    package:用来区分重名的情况

    namespace:必须用"/"开头,如:/front ,在url中我们就要输入:http://localost:1000/struts2_0200_Namespace/front/index.action

  package和namespace在开发的时候都以模块来命名。

    result:凡是name="success"的result,都可以不写:name="success"即:<result>/Namespace.jsp</result>

============================================================================

4. Namespace.jsp

  代码:

    <?xml version="1.0" encoding="UTF-8" ?>
<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
    <%@taglib uri="/struts-tags" prefix="s" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
<title>Insert title here</title>
</head>
<body>
namespace决定了action的访问路径,默认为"",可以接收所有路径的action<br />
namespace可以写为/,或者/xxx,或者/xxx/yyy,对应的action访问路径为/index.action,
/xxx/index.action,或者/xxx/yyy/index.action.<br/>
namespace最好也用模块来进行命名
</body>
</html>

 

以上是关于Struts2 Namespace_命名空间的主要内容,如果未能解决你的问题,请参考以下文章

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

01_2_Namespace命名空间

Atitit  深入理解命名空间namespace  java c# php js

Struts2命令空间小结

Struts2——namespaceaction以及path问题

include与__autoload与命名空间namespace与PSR4详解