Struts2和SpringMvc的区别

来源:互联网 发布:双十一网络诈骗事件 编辑:程序博客网 时间:2024/05/23 05:09

这是我今天面试的时候遇到的面试题,当时自己答得不太好,现在回来之后看了一些资料,总结一下,给以后的自己看,如果有不完整或者不正确的地方,希望各位能够指出来,谢谢大家


1.    Struts2 的核心是基于一个过滤器即StrutsPreparedAndExcuteFilter

       SpringMvc的核心是基于一个Servlet即DispatcherServlet前段控制器


2.    Struts2是基于类开发的,传递的参数是通过类的属性传递(属性驱动和模型驱动),所以只能设计成多例

       SpringMvc是基于类中的方法开发的,也就是一个url对应一个方法,传递参数是传到方法的形参上面,所以既可以是单例模式也可以是多例模式


3.    Struts2采用的是值栈存储请求以及响应数据,OGNL存取数据

       SpringMvc采用request来解析请求内容,然后由其内部的getParameter给方法中形参赋值,再把后台处理过的数据通过ModelAndView对象存储,Model存储数据,View存储返回的页面,再把对象通过request传输到页面去。