Struts1与Struts2的区别

Action类的实现方式

  1. Struts1的Action在实现的时候必须扩展Action类或者Action类的子类
  2. Struts2的Action在实现的时候可以不用实现任何类和接口(虽然Struts2中提供了一个ActionSupport类,但是不是必须实现的)

线程模式

  1. Struts1是单例模式,必须设计成线程安全的
  2. Struts2则为每个请求产生一个实例

Servlet依赖

  1. Struts1的Action类依赖于Servlet API,从其execute的方法签名就可以看出
    execute方法中有两个Servlet参数HttpServletRequest和HttpServletResponse
  2. Struts2则不依赖于Servlet API

可测性

  1. Struts1依赖于Servlet API这些Web元素,所以对Struts1的Action进行测试是很困难的,需要借助于其他的测试工具
  2. Struts2的Action可以像测试其他的一些Model层的Service类一样进行测试

抓捕输入

  1. Struts1的Action与View通过ActionForm或者其子类进行数据传递,虽然也有LazyValidationForm这样的ActionForm的出现,但是还是不能像其他层面那样通过一个简单的POJO进行数据传递
  2. Struts2可以通过一个简单的POJO进行数据传递,将那样的奢望变成了现实

表达式语言

  1. Struts1绑定了JSTL,为页面的编写带来了方便
  2. Struts2整合了ONGL,也可以使用JSTL,因此,Struts2下的表达式语言更加强大
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值