zoukankan      html  css  js  c++  java
  • Spring MVC 起步

    Spring 通常用来开发 web 应用。

    1. Spring MVC 的请求响应机制

    Spring 框架会将请求(request)在调度Servlet(DispatcherServlet)、处理器映射(HandlerMapping)、控制器(Controller)以及视图解析器(View resolver)之间流动。


    这里写图片描述

    每当用户在 web 浏览器中点击链接或提交表单时,请求就开始了。从图中可以看出:

    • 第一步,请求离开浏览器,会带有用户请求内容的信息,
      • 至少需要包含请求的 URL;
      • 还有可能包含其他信息,提交的表单信息;
    • DispatcherServlet 是整个请求响应的调度中心;
      • 同大多数 Java web 一样,Spring MVC 所有的请求都会通过一个前端控制器(front controller)Servlet,其作用在于可以以一个单实例的 Servlet 将请求(request)委托给应用程序(application)的其他组件来进行实际的处理,
      • Spring MVC 中,DispatcherServlet 就是这样的前段控制器;
      • DispatcherServlet 的任务是将请求发送给 Spring MVC 控制器(controller),控制器是一个用于处理 request(handle request)的Spring 组件。
    • 控制器(Controller),在典型的应用程序中可能会有多个控制器,
      • DispatcherServlet 需要知道将请求发送给哪个控制器(什么样的request对应什么样的controller)
      • DispatcherServlet 便需要一个或多个 handler mapping,以确定将请求交给哪一个控制器;
      • 请求到了控制器,控制器会读取请求携带的信息(用户提交的信息)并耐心等待控制器处理这些信息;
      • 实际上,设计良好的控制器本身只处理很少甚至不处理工作,而是将业务逻辑委托给一个或多个服务器对象进行处理;
    • HandlerMapping,处理器映射会根据请求(request)所携带的 url 信息来决定将其交给哪一个控制器(controller)处理;
    • 模型(Model),控制器在完成逻辑处理之后,通常会产生一些信息, 这些信息需要返回给用户并在浏览器上显示,这些信息称为模型(model);
  • 相关阅读:
    Redis系列(三)-Redis replication 实现主从复制(读写分离)
    Redis系列(二)-Redis的RDB和AOF两种持久化机制
    Redis系列(一)-CentOS7下Redis单机安装+自启动
    vmware安装centos 7,没有ifconfig命令,无法访问网络
    本博客停更
    「杂文」昨日之纯真,明日之坚毅
    OkHttpClient跳过证书验证
    java 获取十个工作日之前或之后的日期(算当天)
    java pdfBox给PDF添加图片水印
    docker pull 提示timeout
  • 原文地址:https://www.cnblogs.com/mtcnn/p/9421170.html
Copyright © 2011-2022 走看看