一、共同点
- 都是表现层框架,都是基于MVC模型的
- 底层都离不开原始的ServletAPI
- 他们处理请求的机制都是一个核心控制器
二、区别
- Spring MVC的入口是Servlet,而Struts2是Filter
- Spring MVC是基于方法设计,是单例的,而Struts2是基于类,是多例的。所以Spring MVC会稍微比Struts2快
- Spring MVC使用更加简洁,处理ajax的请求更加方便
- Struts2的OGNL表达式使页面的开发效率比Spring MVC更高,但是执行效率并没有比JSTL提升。特别是Struts2的表单标签没有html执行效率高