Action类:Struts1要求Action类继承一个抽象类,而Struts2的action类是实现一个接口。
依赖:Struts1的action依赖于servlet API,可以直接操作底层的htppservlet request和 htppservletr response,这样不安全,暴露了最底层的接口。Struts2的action不依赖容器,允许action脱离容器单独被测试,struts仍然可以访问底层的htppservlet request和 htppservletr response。
处理器:Struts1是使用ActionServlet作为其中心处理器,而Struts2是使用拦截器(FilterDispatcher)作为中心处理器。
Struts1的Action类是单例模式,必须设计成线程安全的,Struts2则为每一个请求产生一个实例。