首页 > 代码库 > Spring MVC 快速入门-01

Spring MVC 快速入门-01

MVC介绍

MVC是什么

mvc是一种使用MVC(Model View Controller) 设计创建Web应用程序的模式


Model(模型) 表示程序核心计算

View(视图) 展示数据

Controller (控制器) 处理输入


常用的MVC框架

比较常用的MVC框架有Struts 和 Spring MVC

Struts是java Web MVC框架中不争的王者。经过长达九年的发展,Struts已经逐渐成长为一个稳定、成熟的框架,并且占有了MVC框架中最大的市场份额。但是Struts某些技术特性上已经落后于新兴的MVC框架。面对spring MVC 、webwork2 这些设计更精密,拓展性更强的框架,struts收到了前所未有的挑战。

Spring MVC 通过一套MVC注解,让POJO成为处理请求的控制器,无须实现任何接口,同时,Spring MVC 还支持REST风格的URL请求,注解驱动和REST风格的Spring MVC 是spring3.0最出彩的功能之一。此外,spring MVC 在数据绑定、视图解析、本地化处理及静态资源处理上都有许多不俗的表现。它在框架设计、扩展性、灵活性等方面全面超越了Struts、Webwork等MVC框架,从原来的追赶着一跃成为MVC的领跑者。


MVC模式的优缺点

优点:

    耦合性低

    重用性高

    生命周期成本低

    部署快

    可维护高

    有利软件工程化管理

缺点:

    没有明确的定义

    不适合小型,中等规模的应用程序

    增加系统结构和实现的复杂度

    视图与控制器的连接过于紧密

    视图对模型数据的访问效率低

    一般高级的界面工具或构造器不支持模式

SpringMVC简介

    和众多的MVC框架一样,它基于MVC设计理念,此外,它采用了松散耦合可插拔组件结构,比其他MVC框架更具扩展性和灵活性。

    spring MVC 在数据绑定、视图解析、本地化处理及静态资源处理上有许多不俗的表现。

    spring MVC 框架围绕DispatcherServlet 这个核心类展开,DispatcherServlet是spring MVC的总导演、总策划,它负责截获请求并将其分配给指定的处理器处理。

SpringMVC体系结构

spring MVC是基于model2实现的技术框架

DispatcherServlet类

配置DispatcherServlet

要使用SpringMVC,必须在web.xml中配置DispatcherServlet类


图5

DispatcherServlet有一些配置参数,默认情况下我们不用指定,如果需要可通过<servlet>的<init-param>指定:

    namespace

    contextConfigLocation

    publishContext

    publishEvents


图6

DispatcherServlet的体系结构

DispatcherServlet类的运行体系:

    DispatcherServlei的核心本质:是一个Servlet

    init方法在整个系统启动时运行,且只运行一次

  service方法在系统运行的过程中处于监听模式,监听并处理所有的Web请求


图7

DispatcherServlet类的继承体系:

    依次继承FrameworkServlet和HttpServLetBean

    HttpServletBean是Spring对于Servlet最低层次的抽象

    FrameworkServlet则是在HttpServletBean的基础之上的进一步抽象。通过FrameworkServlet真正初始化了一个Spring的容器(WebApplicationContext),并引入到Servlet对象之中

    DispatcherServlet通过initStrategies方法查找并装备Spring容器中用户定义的组件Bean


    



Spring MVC 快速入门-01