首页 > 代码库 > Struts1和Struts2的区别
Struts1和Struts2的区别
对于java web初学者而言,许许多多的开源框架令人发怵。
但是其实只要从基础入手,一切开源框架只是一个前人思想或者方法总结出来的一些工具集。
比如Struts,就是这样一个非常简单的开源框架。只要有Web基础,找一个Struts的helloworld示例简单阅读+反编译一下就能掌握了。
对于Java Web初学者而言,推荐买一本孙卫琴的《Tomcat与Java Web开发技术详解》来打Web基础。
当然,代码虽然不难理解,但Struts涉及到了Web开发中的一个非常重要的比较基础的设计模型,即MVC模型。这个模型思想还是要了解一下,否则视角就不够高。
Struts目前分1和2两个大版本,其实都没什么难的。从入口而言从Servlet改为了Filter。Action从单例改为了多例。具体的区别网上已经有很多总结了。下面贴一个个人认为总结的比较好的。
-------------------------------------------------以下内容来源于外部网站----------------------------------------------------
struts1和struts2的流程区别
Struts1和struts2的工作流程
Struts1流程:
1、客户端浏览器发出HTTP请求。2、根据web.xml配置,该请求被ActionServlet接收。3、根据struts-config.xml配置, ActionServlet先将请求中的参数填充到ActionForm中,然后ActionServlet再将请求发送到Action 进行处理。4、是否验证,需要验证则调用ActionForm的validate方法,验证失败则跳转到input,成功则继续。5、Action从ActionForm获得数据,调用javabean 中的业务方法处理数据。6、Action返回ActionForward对象,跳转到相应JSP页面或Action。7、返回HTTP响应到客户端浏览器。
Struts 2流程:
Struts 2的工作流程相对于Struts 1要简单,与WebWork框架基本相同,所以说Struts 2是WebWork的升级版本。基本简要流程如下:1、客户端浏览器发出HTTP请求。2、根据web.xml配置,该请求被FilterDispatcher接收。3、根据struts.xml配置,找到需要调用的Action类和方法, 并通过IoC方式,将值注入给Aciton。4、Action调用业务逻辑组件处理业务逻辑,这一步包含表单验证。5、Action执行完毕,根据struts.xml中的配置找到对应的返回结果result,并跳转到相应页面。6、返回HTTP响应到客户端浏览器。
更多详细内容请参考:http://www.myexception.cn/program/1354334.html
-------------------------------------------------以上内容来源于外部网站----------------------------------------------------
注意:从Struts2.1.3版本开始,入口的Filter已经从FilterDispatcher改为了StrutsPrepareAndExecuteFilter。