struts 模块化开发学习
重点:以 <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 模块化开发学习相关推荐
- 前端模块化开发学习之gulpbrowserify篇
随着web应用的发展,前端的比重占得越来越多,编写代码从而也越来越复杂.而通常我们需要将不同功能或者不同模块的代码分开写,最后在html中一起加载,这样做是可以的,但是当你需要进行维护或者是二次开发 ...
- 五、Vue模块化开发学习笔记——JavaScript原始功能、匿名函数的解决方案、使用模块作为出口、CommonJS、ES6 export和import的使用
一.JavaScript原始功能 -在网页开发的早期,js制作作为一种脚本语言,做一些简单的表单验证或动画实现等,那个时候代码还是很少的. 那个时候的代码是怎么写的呢? 直接将代码写在<scri ...
- 【Node学习】—Node.js中模块化开发的规范
[Node学习]-Node.js中模块化开发的规范 Node.js 规定一个JavaScript就是一个模块,模块内部定义的变量和函数默认情况下在外部无法得到 模块化内部可以使用exports对象进行 ...
- Vue学习Day6 插槽slot使用、编译作用域、作用域插槽、模块化开发、webpack介绍、安装
想利用暑假时间好好学习一下vue,会记录每一天的学习内容. 今天是学习vue的第6天! 起起伏伏乃人生常态,继续加油- 学习内容 1. 插槽slot slot基本使用 具名插槽slot 2. 编译作用 ...
- [精易软件开发工程师Leo学习笔记]010模块化开发+API
模块化开发 现在模块化开发分为两种,但是他们也可以说成是一种,都是 1.是模块化设计思维,是把一个产品分为若干个功能(模块),然后若干个子功能拼接起来,就是一个产品 2.减少不必要的重复工作,某个功能 ...
- Liferay开发学习(1)
Liferay 6.1开发学习(一):环境搭建 一.资源准备 以下资源内容可以在Liferay的官方网站下载,1-3在http://www.liferay.com/downloads/liferay- ...
- JS三教九流系列-require.js-网站模块化开发
为什么80%的码农都做不了架构师?>>> js开发的模块化就是module处理 简单理解js模块化的开发就是让我们的web项目对js进行分类的处理 我们在开发网站的时候,里面会 ...
- 老前端工程师现身说法,2021Web前端开发学习路线图
导读:2021Web前端开发学习路线图 三大件学习 现在每年依旧有很多初级入门的前端开发.所以对初入门的朋友也给出一点意见. 刚入门的朋友,我觉得不应该一开始就学习像Vue.TypeScript.We ...
- 零基础(转行,应届生、在校生)前端开发学习计划
前言 前端简单概括就是所有你可见的效果呈现都可囊括到前端范畴,前端是一个没有任何竞争的方向,它的不可替代性是其他方向所没有的,比如后端,你可以用 Java.PHP.C#.Go.Ruby 等语言开发.前 ...
最新文章
- Vue-devtools 安装浏览器调试
- php中区分大小写的超全局变量总结
- install onnx_tensort
- C# 数据库dataGridView刷新数据和主外键判断
- 领域应用 | 企业效益最大化的秘密:知识图谱
- MFC工程使用flash控件
- 如何对待逐渐疏远的朋友?
- 电信5g网络apn接入点_华为就5G网络设备禁令起诉瑞典邮政和电信管理局
- Python使用chardet包自动检测编码
- Matlab Tricks(十一)—— 向量的逆序输出
- 阿里云罗庆超:我为什么写《对象存储实战指南》这本书
- 图像识别与人工智能的联系
- 计算机课怎么管纪律,作为班主任,班级纪律应该怎么管?丨班级圆桌派
- java poi 水印_poi excel如何设置水印透明度
- 信息检索的基本方法(1)
- Monte-Carlo算法(基本原理,理论基础,应用实践)
- 微信公众平台开发者模式(1)JAVA版接入
- 为什么静下心来阅读会是一种奢侈?
- 51nod初学者习题(一)
- EtherCAT使用与解析-关于ethercat应用层使用