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>
===========================================================================
注解:
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_命名空间的主要内容,如果未能解决你的问题,请参考以下文章
Atitit 深入理解命名空间namespace java c# php js