springMVC学习总结

   

   引言

   现在springMVC这个框架是比较流行的,我们在项目中使用的也是比价多的,但是在项目中的使用并不能很全面的了解springMVC这个框架的全貌,所以小编就系统的学习了一下这个知识点,下面是一些总结,和大家分享:


  springMVC学习总结_第1张图片

       原图请点我


  上面总结了springMVC的基本知识点,下面在分享一下几个重点的知识点:

   springMVC 处理请求流程

  springMVC学习总结_第2张图片

   具体执行步骤如下:

     1、首先用户发送请求————>前端控制器,前端控制器根据请求信息(如URL)来决定选择哪一个页面控制器进行处理并把请求委托给它,即以前的控制器的控制逻辑部分;图2-1中的1、2步骤;
     2、页面控制器接收到请求后,进行功能处理,首先需要收集和绑定请求参数到一个对象,这个对象在Spring Web MVC中叫命令对象,并进行验证,然后将命令对象委托给业务对象进行处理;处理完毕后返回一个ModelAndView(模型数据和逻辑视图名);图2-1中的3、4、5步骤;
     3、前端控制器收回控制权,然后根据返回的逻辑视图名,选择相应的视图进行渲染,并把模型数据传入以便视图渲染;图2-1中的步骤6、7;
     4、前端控制器再次收回控制权,将响应返回给用户,图2-1中的步骤8;至此整个结束。


   springMVC核心架构图

springMVC学习总结_第3张图片

  小结 

  我们在上面说了这么多,那么springMVC到底给我做了什么呢?


    1、让我们能非常简单的设计出干净的Web层和薄薄的Web层;


    2、进行更简洁的Web层的开发;


   3、天生与Spring框架集成(如IoC容器、AOP等);


   4、提供强大的约定大于配置的契约式编程支持;


   5、能简单的进行Web层的单元测试;


   6、支持灵活的URL到页面控制器的映射;


   7、非常容易与其他视图技术集成,如Velocity、FreeMarker等等,因为模型数据不放在特定的API里,而是放在一个Model里(Map数据结构实现,因此很容易被其他框架使用);


    8、非常灵活的数据验证、格式化和数据绑定机制,能使用任何对象进行数据绑定,不必实现特定框架的API;


    9、提供一套强大的JSP标签库,简化JSP开发;


    10、支持灵活的本地化、主题等解析;


    11、更加简单的异常处理;


    12、对静态资源的支持;


    13、支持Restful风格。




   






你可能感兴趣的:(————【java基础】)