springmvc和struts2都是MVC模式中C控制层的框架,但是两者也有一些本质上的区别:
1、springvc的核心是servlet,struts2的核心是filter。
2、springmvc基于方法开发的,struts2基于类开发springmvc将请求URL和方法映射,映射成功后生成一个handler对象,对象中只包含了一个method,方法执行结束,形参数据销毁。struts2将请求URL和action类映射。3、springmvc通过形参接收参数,多线程访问的时候,方法里面的参数,每个线程在内存中都有独立的空间,因此可以进行单例开发,并且建议使用单例开发。struts2通过类的成员变量接收参数,多线程访问共享成员变量,所以无法使用单例开发,只能使用多例。
4、经实际测试,struts2速度慢,在于使用了struts标签,所以使用struts2,建议使用jstl。