1. struts2 和 springmvc 控制器控制视图和模型的交换机制不同。
2. struts2是Action类级别 多例的,而springmvc是方法级别,更容易实现restful风格,单例的。
3. struts2采用filter(strutsperpareAndExecuterFilter)实现,springmvc 则 采用 servlet 实现。
filter 在容器启动之后即初始化,服务器停止以后坠毁,晚于servlet,servlet是在调用时初始化,
先于filter调用,服务停止后销毁。
4. struts2 有自己的拦截interceptor机制,springmvc用的是独立的AOP方式,这样导致struts2的配置
文件量比springmvc 大。
5.
SpringMVC实现了零配置,由于SpringMVC基于方法的拦截,有加载一次单例模式bean注入。而Struts2是类级别的拦截,每次请求对应实
例一个新的Action,需要加载所有的属性值注入,所以,SpringMVC开发效率和性能高于Struts2。