专注Java教育14年 全国咨询/投诉热线:444-1124-454
赢咖4LOGO图
始于2009,口口相传的Java黄埔军校
首页 学习攻略 Java学习 Java基础学习线路:struts1与struts2的不同

Java基础学习线路:struts1与struts2的不同

更新时间:2019-12-05 16:37:33 来源:赢咖4 浏览2097次

 

 

29 拷贝.jpg

 

struts1与struts2两者有何异同?

1、都是MVC的WEB框架

2、struts1的老牌框架,应用很广泛,有很好的群众基础,使用它开发风险很小,成本更低!struts2虽然基于这个框架,但是应用群众并多,相对不成熟,未知的风险和变化很多,开发人员相对不好招,使用它开发项目的风险系数更大,用人成本更高!

3、struts2毕竟是站在前辈的基础设计出来,它会改善和完善struts1中的一些缺陷,struts1中一些悬而未决问题在struts2得到了解决。

4、struts1的前端控制器是一个Servlet,名称为ActionServlet,struts2的前端控制器是一个filter,在struts2.0中叫FilterDispatcher,在struts2.1中叫StrutsPrepareAndExecuteFilter。

5、struts1的action需要继承Action类,struts2的action可以不继承任何类;struts1对同一个路径的所有请求共享一个Action实例,struts2对同一个路径的每个请求分别使用一个独立Action实例对象,所有对于struts2的Action不用考虑线程安全问题。

6、在struts1中使用formbean封装请求参数,在struts2中直接使用action的属性来封装请求参数。

7、struts1中的多个业务方法放在一个Action中时(即继承DispatchAction时),要么都校验,要么都不校验;对于struts2,可以指定只对某个方法进行校验,当一个Action继承了ActionSupport且在这个类中只编写了validateXxx()方法,那么则只对Xxx()方法进行校验。

(一个请求来了的执行流程进行分析,struts2是自动支持分模块开发,并可以不同模块设置不同的url前缀,这是通过package的namespace来实现的;struts2是支持多种类型的视图;struts2的视图地址可以是动态的,即视图的名称是支持变量方式的,举例,论坛发帖失败后回来还要传递boardid。视图内容显示方面:它的标签用ognl,要el强大很多,在国际化方面支持分模块管理,两个模块用到同样的key,对应不同的消息;)

  与Struts1不同,Struts2对用户的每一次请求都会创建一个Action,所以Struts2中的Action是线程安全的。struts1配置文件中的redirect视图的url不能接受参数,而struts2配置文件中的redirect视图可以接受参数。

       以上就是赢咖4注册机构小编介绍的“Java基础学习线路:struts1与struts2的不同”的内容,希望对大家有帮助,如有疑问,请在线咨询,有专业老师随时为你服务。

 视频相关

全网最新全套Java视频教程下载:http://www.6acf.com/video.html

Java学习资料下载:http://www.6acf.com/tutorial_java_se/

Struts2视频教程:http://www.6acf.com/v37/

 

提交申请后,顾问老师会电话与您沟通安排学习

免费课程推荐 >>
技术文档推荐 >>