struts2比Strust1有什么优势

我就简单谈谈的看法吧
1:struts1的核心是个servlet ,与servlet API严重耦合,难于测试,而且还是单例,就造成了一定的限制。资源必须为线程安全或者同步
而struts2的核心是个过滤器,为每一个请求实例化一个对象,所以没有线程安全的问题。
2:struts1的Action类依赖于servlet API   属于侵入式设计 。struts2的Action与容器无关
3:struts1整合Jstl标签,所以就使用JSTL表达语言。struts2使用JSTL,也支持更灵活的OGNL(对象图形符号语言)
4:struts1用ActionForm对象来获取输入,并且还有验证功能。
   struts2 Action属性作为输入属性,就减少了第二个输入对象的需要

 

struts1和struts2 是2个完全不同的框架,其实struts2核心就是 webwork框架
struts1以ActionServlet作为核心控制器,由ActionServlet负责拦截用户的所有请求。
Struts 1框架有3个重要组成部分:Action、ActionForm和ActionForward对象。
ActionForm必须实现ActionForm的基类,设计上并不是真正的POJO。
struts2核心控制器是FilterDispatcher,Struts 2用于处理用户请求的Action实例,
并不是用户实现的业务控制器,而是Action代理——因为用户实现的业务控制器并没有与
Servlet API耦合,显然无法处理用户请求。而Struts 2框架提供了系列拦截器,
该系列拦截器负责将HttpServletRequest请求中的请求参数解析出来,传入到Action中,
并回调Action的execute方法来处理用户请求。显然,上面的处理过程是典型的AOP(面向切面编程)
处理方式。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值