zoukankan      html  css  js  c++  java
  • Java下Web MVC的领跑者:SpringMVC

    比较常用的MVC框架有Struts 和 SpringMVC。

    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最出彩的功能之一。此外,Sping MVC在数据绑定、视图解析、本地化处理及静态资源处理上都有许多不俗的表现。它在框架设计、扩展性、灵活性等方面全面超越了Struts、WebWork等MVC框架,从原来的追赶者一跃成为MVC的领跑者。

    • 和众多其他Web框架一样,它基于MVC设计理念,此外,它采用了松散耦合可插拔组件结构,比其他MVC框架更具扩展性和灵活性。
    • Sping MVC在数据绑定、视图解析、本地化处理及静态资源处理上都有许多不俗的表现。
    • Spring MVC框架围绕DispatcherServlet这个核心展开,DispatcherServlet是Sprrng MVC的总导演、总策划,它负责截获请求并将其分派给相应的处理器处理。

    SpringMVC的工作流程:

    1.客户端发起Http请求,DispatcherServlet接受客户端的请求(相当于控制器);

    2.DispatcherServlet通过HandlerMapping寻找合适的处理器(相当于IOC);

    3.DispatcherServlet将请求发给Handler处理(如有必要,Handler还可以通过调用其它分布式服务实现目标);

    4.Handler将处理结果以“ModelAndView”的形式反馈给DispatcherServlet;

    5.DispatcherServlet根据ModelAndView中“View”的指示,通过ViewResolver解析到合适的View;

    6.DispatcherServlet将ModelAndView中的"Model"加载到上一步解析出来的View中(这个View可能是网页、xml、pdf等等);

    7.客户端获得Http响应。

    流程示意图如下:

  • 相关阅读:
    Centos6.5下本地yum源及局域网yum源配置
    计算机网络之应用层_part -3
    计算机网络之应用层_part -2
    计算机网络之应用层_part -1
    LeetCode-Minimum Path Sum[dp]
    LeetCode-Interleaving String[dp]
    LeetCode-Best Time to Buy and Sell Stock III[dp]
    LeetCode-Palindrome Partitioning II[dp]
    用hexo + github 快速搭建个人博客,由于刚搭建好,有点小激动,就分享下,不好的地方还请指出,谢谢
    搭建node.js 本地服务器
  • 原文地址:https://www.cnblogs.com/quickcodes/p/5400574.html
Copyright © 2011-2022 走看看