重点:以 <param-name>config/View</param-name>   中指定的模块名VIEW 建立web目录下的子文件夹,在这个文件夹中写对应模块的JSP页面。

1、  采用struts1.1及以上版本

2、  采用多配置文件,一个模块一个配置文件(一个核心struts-config.xml和多个struts-config-xxxx.xml),需要在web.xml文件中配置,以下形式举例:

<init-param>

<param-name>config</param-name>

<param-value>/WEB-INF/struts-config.xml</param-value>

</init-param>

<init-param>

<param-name>config/View</param-name>

<param-value>/WEB-INF/struts-config-View.xml</param-value>

</init-param>

<init-param>

<param-name>config/Login</param-name>

<param-value>/WEB-INF/struts-config-Login.xml</param-value>

</init-param>

3、  多模块采用多文件夹目录(对应模块名)管理,比如以下(注意文件夹Login和View):

4、  其他注意事项:

1)  模块名与对应模块配置文件后缀一致

<init-param>

<param-name>config/View</param-name>

<param-value>/WEB-INF/struts-config-View.xml</param-value>

</init-param>

以上配置中,模块名为View,config/View前的config不可少。

模块名为View,则对应模块配置文件则为struts-config-View.xml

2)  应用于某模块的jsp文件统计一放置到以模块名命名的文件夹中,并且对应模块配置文件中不需要指定某jsp文件所在的模块名路径。 

struts-config-View.xml内容如下:

<struts-config>

<action-mappings>

<action path="/list" type="com.moduler.ViewAction">

<forward name="0" path="/list.jsp" />

<forward name="1" path="/add.jsp" />

</action>

</action-mappings>

</struts-config>

注意在以上配置文件中配置jsp的path路径时,并没有写明所在模块名称View,因为控制器自动将配置文件对应模块名作为首路径寻找对应jsp。

另一配置文件同理:

<struts-config>

<action-mappings>

<action path="/index" forward="/index.jsp"/>

<action path="/index2" forward="/Node/index2.jsp"/>

</action-mappings>

</struts-config>

3)  在某个jsp文件中要实现模块间的跳转,也即一个模块的Action跳转到另一个模块的Action,可以使用以下两种方式:

以从模块View下的add.jsp跳转到模块Login下的index.jsp为例,在add.jsp中加入以下即可:

A.<a href="/moduler/Login/index.do">转到login</a>

B.<a href="/moduler/ModuleSwitch.do?prefix=/Login&page=/index.do">转到login</a>

以上B方法采用了struts1.1中的SwitchAction类,并且需要在struts-config.xml中提前作如下配置:

<action-mappings>

<action   path="/ModuleSwitch"   type="org.apache.struts.actions.SwitchAction"/>

</action-mappings>

4)如要在模块外,或者全局跳转,仍需要在struts-config.xml中作相应配置。

struts 模块化开发学习相关推荐

  1. 前端模块化开发学习之gulpbrowserify篇

     随着web应用的发展,前端的比重占得越来越多,编写代码从而也越来越复杂.而通常我们需要将不同功能或者不同模块的代码分开写,最后在html中一起加载,这样做是可以的,但是当你需要进行维护或者是二次开发 ...

  2. 五、Vue模块化开发学习笔记——JavaScript原始功能、匿名函数的解决方案、使用模块作为出口、CommonJS、ES6 export和import的使用

    一.JavaScript原始功能 -在网页开发的早期,js制作作为一种脚本语言,做一些简单的表单验证或动画实现等,那个时候代码还是很少的. 那个时候的代码是怎么写的呢? 直接将代码写在<scri ...

  3. 【Node学习】—Node.js中模块化开发的规范

    [Node学习]-Node.js中模块化开发的规范 Node.js 规定一个JavaScript就是一个模块,模块内部定义的变量和函数默认情况下在外部无法得到 模块化内部可以使用exports对象进行 ...

  4. Vue学习Day6 插槽slot使用、编译作用域、作用域插槽、模块化开发、webpack介绍、安装

    想利用暑假时间好好学习一下vue,会记录每一天的学习内容. 今天是学习vue的第6天! 起起伏伏乃人生常态,继续加油- 学习内容 1. 插槽slot slot基本使用 具名插槽slot 2. 编译作用 ...

  5. [精易软件开发工程师Leo学习笔记]010模块化开发+API

    模块化开发 现在模块化开发分为两种,但是他们也可以说成是一种,都是 1.是模块化设计思维,是把一个产品分为若干个功能(模块),然后若干个子功能拼接起来,就是一个产品 2.减少不必要的重复工作,某个功能 ...

  6. Liferay开发学习(1)

    Liferay 6.1开发学习(一):环境搭建 一.资源准备 以下资源内容可以在Liferay的官方网站下载,1-3在http://www.liferay.com/downloads/liferay- ...

  7. JS三教九流系列-require.js-网站模块化开发

    为什么80%的码农都做不了架构师?>>>    js开发的模块化就是module处理 简单理解js模块化的开发就是让我们的web项目对js进行分类的处理 我们在开发网站的时候,里面会 ...

  8. 老前端工程师现身说法,2021Web前端开发学习路线图

    导读:2021Web前端开发学习路线图 三大件学习 现在每年依旧有很多初级入门的前端开发.所以对初入门的朋友也给出一点意见. 刚入门的朋友,我觉得不应该一开始就学习像Vue.TypeScript.We ...

  9. 零基础(转行,应届生、在校生)前端开发学习计划

    前言 前端简单概括就是所有你可见的效果呈现都可囊括到前端范畴,前端是一个没有任何竞争的方向,它的不可替代性是其他方向所没有的,比如后端,你可以用 Java.PHP.C#.Go.Ruby 等语言开发.前 ...

最新文章

  1. Vue-devtools 安装浏览器调试
  2. php中区分大小写的超全局变量总结
  3. install onnx_tensort
  4. C# 数据库dataGridView刷新数据和主外键判断
  5. 领域应用 | 企业效益最大化的秘密:知识图谱
  6. MFC工程使用flash控件
  7. 如何对待逐渐疏远的朋友?
  8. 电信5g网络apn接入点_华为就5G网络设备禁令起诉瑞典邮政和电信管理局
  9. Python使用chardet包自动检测编码
  10. Matlab Tricks(十一)—— 向量的逆序输出
  11. 阿里云罗庆超:我为什么写《对象存储实战指南》这本书
  12. 图像识别与人工智能的联系
  13. 计算机课怎么管纪律,作为班主任,班级纪律应该怎么管?丨班级圆桌派
  14. java poi 水印_poi excel如何设置水印透明度
  15. 信息检索的基本方法(1)
  16. Monte-Carlo算法(基本原理,理论基础,应用实践)
  17. 微信公众平台开发者模式(1)JAVA版接入
  18. 为什么静下心来阅读会是一种奢侈?
  19. 51nod初学者习题(一)
  20. EtherCAT使用与解析-关于ethercat应用层使用

热门文章

  1. 开发人员必读的11本最具影响力书籍
  2. css :after :berfor
  3. cadence遇到的问题(持续更新)
  4. 大数据下的BI新特性
  5. [转]一个简单的反射拷贝一份新的实体类
  6. kafka消费者和生产者为内/外网映射情况的配置
  7. Vue导入非模块化的第三方插件功能无效解决方案
  8. linux上安装mysql5.7
  9. 简单的 php 防注入、防跨站 函数
  10. mysql修改表结构(拆分)