最近看看了有关struts1的资料文章,于是小弟不才,自己也来个小小的总结,希望和我一样的初学者能通过我的文章学习到一些知识,相互交流
1.struts的工作流程:
通过web.xml加载org.apache.struts.action.ActionServle,进行struts核心控制器的初始化工作,初始化过程中读取struts-config.xml,加载不同的 ModuleConfig对象。
比如配置文件中的Action映射定义都保存在ActionConfig集合中。相应地有ControlConfig集合、FormBeanConfig 集合、ForwardConfig集合和MessageResourcesConfig集合等。
控制器接受到HTTP请求之后,通过ActionConfig,通过path找到相应的action,如果没有相应的action,控制器会直接将请求转发到JSP或者静态页面,否则控制器会通过控制分发转发到相应的action类进行处理。
在action执行execute方法之前首先会通过actionForm 进行填充,在HTTP提交请求的时候,页面提交所有的属性都会通过form 保存到actionForm中。 这个时候可以通过actionForm 中的validate方法进行格式验证。之后会通过actionMapping 进行控制转发跳转。
action其实主要是作为一个中间桥梁,作为JSP页面和javabean的中间交换。祈祷一个控制转发作用。
2模块开发:
在应用struts的时候我们都在运用大量的struts-config.xml在处理我们的action转发,项目模块的不断增加我们可以进行模块化的配置,加载不同的struts-config.xml
<servlet>
<servlet-name>action</servlet-name>
<servlet-class>org.apache.struts.action.ActionServlet</servlet-class>
<init-param>
<param-name>config</param-name>
<param-value>/WEB-INF/struts-config.xml, /WEB-INF/struts-config-registration.xml</param-value>
</init-param>
<load-on-startup>1</load-on-startup>
</servlet>
3.ActionServlet:
作为struts的核心控制器,当初始化后进行,请求之后,会调用其中的
process方法进行每个方法的调用器:
protected void process(HttpServletRequest request, HttpServletResponse response)
throws IOException, ServletException {
ModuleUtils.getInstance().selectModule(request, getServletContext());
ModuleConfig config = getModuleConfig(request);
RequestProcessor processor = getProcessorForModule(config);
if (processor == null) {
processor = getRequestProcessor(config);
}
processor.process(request, response);
}
引用与部分内容。http://www.ibm.com/developerworks/cn/java/l-struts1-1/#author
分享到:
相关推荐
struts1.x 学习总结 struts1.x 学习总结 struts1.x 学习总结 struts1.x 学习总结
Struts1.x常用的开发包,需要学习struts1.x朋友可以下载
struts 1.x学习笔记,简单易懂,适合入门者
Struts1.x-Jdbc,学习Struts1.的曾删改查
这是struts1.x标签! struts1.x是历经考验的成熟的框架! 此标签可以帮助你更好的学习struts1.x的标签!
Struts1.x学习笔记,struts1.x开放过程小技巧
学习魔乐科技Struts2.x视频框架的学习笔记,在这里给各位参考一下,要mldn其他框架笔记的请关注我,后续会推出
NULL 博文链接:https://redlight168.iteye.com/blog/1732693
struts2.x所需要的支持类库,内附struts2的学习资料
Struts2.x整合工具开发包,需要的朋友下载过来学习
读者如果曾经学习过Struts1.x或者有过Struts1.x的开发经验,那么千万不要想当然地以为这一章可以跳过。实际上Struts1.x与Struts2并无我们想象的血缘关系。虽然Struts2的开发小组极力保留Struts1.x的习惯,但因为...
此示例用Meclipse6.5开发,展示了struts的基本开发流程,利用了struts的数据类型自动转换器,项目发布好,直接访问index.jsp即可.
Struts1的学习教程,入门资料,有需要的可以看看,包含24个word文件。
NULL 博文链接:https://lxdyycg.iteye.com/blog/1461116
如果大家使用过 Struts1.x ,应该对建立基于 Struts1.x 的 Web 程序的基本步骤非常清楚。 让我们先来回顾一下建立基于 Struts1.x 的 Web 程序的基本步骤。 1. 安装 Struts 。由于 Struts 的入口点是 ActionServlet ...
struts1 学习整理 有基础的才下 有struts常见面试题
本系列教程将详细介绍Struts 1.x的基本原理和使用方法,读者可以参阅《Struts 2系列教程》来比较Struts 1.x和Struts 2.x的相同点和不同点。 在这篇文章中将以一个简单的例子(mystruts)来演示如何使用MyEclipse来...
计算机软件编程学习笔记: 01. Unix note.txt 02. SQL note.txt 03. PL SQL note.txt ...14. Struts1.x note.txt 14. Struts2.x note.txt 15. Spring note.txt 16. EJB note.txt 17. WebService note.txt
读者如果曾经学习过Struts1.x或者有过Struts1.x的开发经验,那么千万不要想当然地以为这一章可以跳过。实际上Struts1.x与Struts2并无我们想象的血缘关系。虽然Struts2的开发小组极力保留Struts1.x的习惯,但因为...
Struts1.x的全中文开发api文档帮助手册。学习Struts1的同志们有福了。