Spring MVC 与 Struts2 的区别

前言 | Spring MVC和 Struts2一样,都是属于 web 层的框架

    1. Spring MVC 的入口是一个 servlet 即前端控制器,而 Struts2 入口是一个 filter 过滤器。
    1. Spring MVC 是基于方法开发(一个 url 对应一个方法),请求参数传递到方法的形参,可以设计为单例或多例(建议单例),Struts2 是基于类开发,传递参数是通过类的属性,只能设计为多例。
    1. Struts2 采用值栈存储请求和响应的数据,通过 OGNL 存取数据, Spring MVC通过参数解析器是将 request 请求内容解析,并给方法形参赋值,将数据和视图封装成 ModelAndView 对象,最后又将 ModelAndView 中的模型数据通过 request 域传输到页面。Jsp 视图解析器默认使用 jstl。
    1. Struts2 绑定参数是绑在成员变量上,而 Spring MVC 绑定参数是绑在形参上。

多例:每个请求新建一个类
单例:每个请求复制一个方法

你可能感兴趣的:(Spring MVC 与 Struts2 的区别)