知识大全 Struts从零开始六、Struts的模块使用实例
Posted 知
篇首语:星星使天空绚烂夺目,知识人们增长才干。本文由小常识网(cha138.com)小编为大家整理,主要介绍了知识大全 Struts从零开始六、Struts的模块使用实例相关的知识,希望对你有一定的参考价值。
Struts从零开始六、Struts的模块使用实例 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!
在使用Struts框架时 每个请求都由Action去处理 并且还要在struts config xml中加以设定 这样以来做小项目还行 在大型网站的开发中 有很多小组负责不同的模块 如果每一个小组要对一个struts config xml进行设定 将会导致struts config xml的版本控制问题
您可以为每个小组分配不同的struts config xml设定文件 方法是在ActionServlet参数的config参数后面加上后缀 如果是config/admin 那么相应的配置文件的名字就是 struts config admin 他们的后缀名字必须对应 这样才能映射上
例如我们可以把后台处理分配一个小组 设定具体代码如下所示 web xml
action
apache struts action ActionServlet
config
/WEB INF/conf/struts config xml
config/admin
/WEB INF/conf/struts confg admin xml
debug
detail
config/admin 指定了admin模块的所使用的配置文件是struts config admin xml 现在负责后台模块的开发人员只要管理自己的开发文档设定就行了 就像前面所说的一样 当ActionServlet收到请求时 它是根据模块你所指定的后缀 进行处理是哪个模块的请求
例如
这个URL 表示请求由strutsmodel工程的admin环境的admin do来处理这个请求 这样以来前台和后台就分明了 各自开发各自的 各自管理自己的配置文件 达到松耦合的目的
当ActionServlet请求接收请求 它判断URL中相对与context的前缀 例如上例中的admin 于是就知道应该使用admin模块 下面是struts config admin xml
……
path= /admin
type= zhoudq webapp action AdminAction >
……
这样以来所有的path设定将自动被加上login前缀 例如必须使用以下的路径才可以正确的请求到AdminAction
在模块中的Action在查找forward时 都是以所在模块 查找对应的struts confg XXX xml的 例如上面的AdminAction在查找forward时 则会查找struts config admin xml中的forward元素 也就是说 模块中的forward对象的查找都是相对于模块的路径的 而不是相对与环境上下文
那么我们模块分配工作几已经搞定了 各个小组可以分别开工了 但是问题来了 那么如何从当前的模块换到另一个模块呢?
当您的项目分作很多个模块时 在使用者点某个链接时 您有两个方法可以在模块之间切换
一 方法一
是使用相对与环境上下文的路径进行forward转发 您可以在当前的struts config XX xml如下设定 例如是 struts config admin xml中加入
name= switchModuleToFront
contextRelative= true
path= /front/login do
redirect= true />
这个是全局可以找到的forward中设定的 下面是在action元素中设定如何转发模块 代码如下
……
path= /admin
type= zhoudq webapp action AdminAction >
name= admin
contextRelative= true
path= /front/login do
redirect= true />
……
上面这种配置就是通过forward元素转换到相应的模块 下面我们看另一种方法吧
二 方法二
这种方法是我们通过配置Struts的一个特定的类SwitchAction 就能实现上面的要求了 并且需要两个参数
. prefix 用来指定模块的后缀名称
. page 用来指定你的资源路径
例如
……
path= /switch
type= apache struts actions SwitchAction />
……
例如
;page=/admin do
cha138/Article/program/Java/ky/201311/27872相关参考
知识大全 Struts从零开始六、Struts的模块使用实例[3]
Struts从零开始六、Struts的模块使用实例[3] 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下
知识大全 Struts从零开始六、Struts的模块使用实例[2]
Struts从零开始六、Struts的模块使用实例[2] 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下
知识大全 Struts从零开始五、Struts中验证数据实例[8]
Struts从零开始五、Struts中验证数据实例[8] 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下
知识大全 Struts从零开始五、Struts中验证数据实例[7]
Struts从零开始五、Struts中验证数据实例[7] 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下
知识大全 Struts从零开始五、Struts中验证数据实例[6]
Struts从零开始五、Struts中验证数据实例[6] 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下
知识大全 Struts从零开始五、Struts中验证数据实例[5]
Struts从零开始五、Struts中验证数据实例[5] 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下
知识大全 Struts从零开始五、Struts中验证数据实例[4]
Struts从零开始五、Struts中验证数据实例[4] 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下
知识大全 Struts从零开始五、Struts中验证数据实例[3]
Struts从零开始五、Struts中验证数据实例[3] 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下
知识大全 Struts从零开始五、Struts中验证数据实例[2]
Struts从零开始五、Struts中验证数据实例[2] 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下
知识大全 Struts从零开始五、Struts中验证数据实例[1]
Struts从零开始五、Struts中验证数据实例[1] 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下