zoukankan      html  css  js  c++  java
  • springMVC总结

    springMVC的定义

     

    SpringMVC是目前最好的实现MVC设计模式的框架,是Spring框架的一个分支产品,已经融合在Spring Web Flow里面。它以SpringIOC容器为基础,并利用容器的特性来简化它的配置。
    SpringMVC对MVC流程进行了封装,屏蔽掉很多底层代码,开放出接口,让开发者可以更加轻松快捷的完成基于MVC模式的Web开发。
     
    MVC设计模式的理解
     
    M:model数据模型
    V:view用户界面
    C:controller控制器
     
    使用mvc的目的:将M和V实现代码分离,C存在的目的是确保M和V的同步,一旦M改变,V也该同步更新。MVC模式的核心思想是将业务逻辑从界面中分离出来,允许它们单独改变而不会相互影响
    怎么理解MVC设计模式呢?
    模型就是封装业务逻辑和数据的一个个的模块,控制器就是调用这些模块来实现功能,视图就是jsp,当用户发出请求的时候,控制器根据请求来选择要处理的业务逻辑和要选择的数据,再返回结果输出到视图层。
     
    springMVC的工作流程
     
     
     

    1、 用户发送请求至前端控制器DispatcherServlet。

    2、 DispatcherServlet收到请求调用HandlerMapping处理器映射器。

    3、 处理器映射器找到具体的处理器(可以根据xml配置、注解进行查找),生成处理器对象及处理器拦截器(如果有则生成)一并返回给DispatcherServlet。

    4、 DispatcherServlet调用HandlerAdapter处理器适配器。

    5、 HandlerAdapter经过适配调用具体的处理器(Controller,也叫后端控制器)。

    6、 Controller执行完成返回ModelAndView。

    7、 HandlerAdapter将controller执行结果ModelAndView返回给DispatcherServlet。

    8、 DispatcherServlet将ModelAndView传给ViewReslover视图解析器。

    9、 ViewReslover解析后返回具体View。

    10、DispatcherServlet根据View进行渲染视图(即将模型数据填充至视图中)。

    11、 DispatcherServlet响应用户。

     

    springMVC的优点

     

    1. 可以支持各种视图技术,而不仅仅局限于JSP;

    2. 与Spring框架集成(如IoC容器、AOP等);

    3. 清晰的角色分配:前端控制器(dispatcherServlet) , 请求到处理器映射(handlerMapping), 处理器适配器(HandlerAdapter), 视图解析器(ViewResolver)。

    4. 支持各种请求资源的映射策略。

     
     
     
     
    参考:
    https://www.jianshu.com/p/27648fca6867
    https://www.cnblogs.com/sunliyuan/p/10719072.html
    https://www.jianshu.com/p/85a04d6ff1be
  • 相关阅读:
    Intent
    What should we do next in general after collecting relevant data
    NOTE FOR Secure Friend Discovery in Mobile Social Networks
    missing pcap.h
    after building Android Source code
    plot point(one column)
    When talking to someone else, don't infer that is has been talked with others at first. It may bring repulsion to the person who is talking with you.
    进程基本知识
    Python input和raw_input的区别
    强制 code review:reviewboard+svn 的方案
  • 原文地址:https://www.cnblogs.com/flyinghome/p/12258672.html
Copyright © 2011-2022 走看看