Struts的作用,简单说把用户的请求和返回的视图分离!
<package name="front" extends="struts-default" namespace="/front">
<action name="index">
<result>/Namespace.jsp</result>
</action>
</package>
package跟java的包类似,防止命名冲突,一般采用模块化命名。
namaspace决定了action的访问路径,默认为namespace="",表示可以接收所有路径的action。 namespace可以写为/,或者为/xxx,或者/xxx/yyy,对应的action访问路为/index.action,/xxx/index.action,/xxx/yyy/index.action。 namespace最好也用模块来进行命名。
Struts2每次访问Action,都会创建一个新对象!而Struts1访问的Action是同一个对象,在Struts启动时创建!
路径问题?
Struts2中的路径问题根据Action的路径而不是jsp路径来确定,所以尽量不要使用相对路径。
解决方案:统一使用绝对路径。(在jsp中使用request.getContextRoot方式来拿到webapp的路径或者使用myeclipse经常用的,指定basePath。
<%
String path = request.getContextPath();
String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
%>
<a href="<%=basePath%>index.jsp">index.jsp</a>
或在<head>中加入<base href="<%=basePath%>" />
分享到:
相关推荐
### C++命名空间(namespace)详解 #### 命名空间概览 在C++编程语言中,`namespace`(命名空间)是一个关键的概念,用于管理标识符的作用域,避免命名冲突,尤其是在大型项目和库使用场景下。命名空间提供了一种...
kubens 用于操作命名空间namespace的第三方命令
JavaScript中的命名空间(namespace)模式是一种组织代码结构的策略,特别是在使用多个库或框架时,避免全局变量冲突和提高代码可维护性。由于JavaScript没有像C#或Java那样的内置命名空间支持,开发者需要通过...
在C++编程语言中,命名空间(namespace)是一种组织代码的方式,主要目的是为了避免在大型项目中因不同模块或库使用相同标识符(如变量、函数、类等)而导致的命名冲突。命名空间通过将相关的一组标识符封装在一起,...
本文实例讲述了PHP命名空间namespace用法。分享给大家供大家参考,具体如下: namespace(命名空间)相当于函数、类,划分了一个区域,这样子就使得在同个页面中可以require相同的类,使用相同名字的函数 : 在项目中...
首先,`Qt`命名空间的引入通常在C++源文件中通过`using namespace Qt;`来完成,这使得文件内的所有代码可以直接使用Qt中的类和函数,而无需每次都写上`Qt::`前缀。然而,这种做法在大型项目中可能会导致全局命名空间...
namespace即“命名空间”,也称“名称空间” 、”名字空间”。接下来通过本文给大家介绍JavaScript中命名空间namespace模式的相关知识,非常不错,具有参考借鉴价值,感兴趣的朋友一起学习吧
本文实例讲述了PHP命名空间namespace的定义方法。分享给大家供大家参考,具体如下: 定义命名空间 对于空间的命名,在此我想不用文字解释,更好的解释是用实例来证明: For example: 下面这段代码是”test.php”里面...
摘要:C#源码,综合实战,NameSpace使用 C#使用命名空间NameSpace的一个基础实例,以命令提示符控制台的形式显示出演示结果,挺基础的C#例子,使用using指令引入命名空间NameSpace,实例化NameSpace中的类,调用类中的...
本文实例讲述了PHP命名空间namespace及use的简单用法。分享给大家供大家参考,具体如下: 最近一段时间在研究php框架,一直想的什么时候才能开发出自己的框架,当然这是为了提升自己的编程水平,同时能把平时学的...
C++命名空间(namespace)是C++编程语言中一个重要的特性,它的主要目的是为了帮助解决在大型项目中可能出现的名称冲突问题。当多个模块或库使用相同的标识符时,命名空间提供了一种方法,使得相同名称的标识符可以...
曾经学C++的时候,经常听到这个名词,它主要是为了避免命名冲突而产生的。 就像有A(4个苹果),B(6个苹果)两个人,10个苹果,如果...全局命名空间(global namespace):即模块中定义的名称 —— 包括模块中的变量、
在C++编程中,命名空间(Namespace)是一种重要的组织代码的方式,它可以帮助避免全局作用域内的名字冲突。在Android开发中,特别是在系统级的C++代码中,遵循良好的命名空间规范是至关重要的,因为它可以提高代码的...
命名空间的定义十分简单,通过关键字namespace后跟命名空间的名称即可。一个PHP文件中可以定义多个命名空间,但每一个命名空间前不能有任何代码。一旦定义了命名空间,之后的代码段就都属于该命名空间。如果在...
在PHP编程中,命名空间(Namespace)是一种组织代码的重要机制,它允许我们在同一个全局命名空间内定义具有相同名称的不同函数、类或接口,避免了命名冲突的问题。本篇将深入探讨PHP命名空间的使用和实例。 一、PHP...