springmvc 知识点

启动流程

启动的时候会初始化【HttpServletBean init()】 ->【FrameworkServlet
initServletBean()】->【initWebApplicationContext() 并且找到initHandlerMappings等】;

请求

请求的时候会到DispatcherServlet的doDispatch()方法。然后通过getHandlers()找到对应的RequestMappingHandler。然后摘到HandlerMethod();返回HandlerExecutionChain。然后找到HandlerAdapter。然后执行HandlerAdapter.invoke()即可。


image.png
  • 物理层:
    物理层负责最后将信息编码成电流脉冲或其它信号用于网上传输;
    eg:RJ45等将数据转化成0和1;
  • 数据链路层:
    数据链路层通过物理网络链路􏰁供数据传输。不同的数据链路层定义了不同的网络和协 议特征,其中包括物理编址、网络拓扑结构、错误校验、数据帧序列以及流控;
    可以简单的理解为:规定了0和1的分包形式,确定了网络数据包的形式;
  • 网络层
    网络层负责在源和终点之间建立连接;
    可以理解为,此处需要确定计算机的位置,怎么确定?IPv4,IPv6!
  • 传输层
    传输层向高层􏰁提供可靠的端到端的网络数据流服务。
    可以理解为:每一个应用程序都会在网卡注册一个端口号,该层就是端口与端口的通信!常用的(TCP/IP)协议;
  • 会话层
    会话层建立、管理和终止表示层与实体之间的通信会话;
    建立一个连接(自动的手机信息、自动的网络寻址);
  • 表示层:
    表示层􏰁供多种功能用于应用层数据编码和转化,以确保以一个系统应用层发送的信息 可以被另一个系统应用层识别;
    可以理解为:解决不同系统之间的通信,eg:Linux下的QQ和Windows下的QQ可以通信;
  • 应用层:
    OSI 的应用层协议包括文件的传输、访问及管理协议(FTAM) ,以及文件虚拟终端协议(VIP)和公用管理系统信息(CMIP)等;
    规定数据的传输协议;

请求从浏览器到后端

1;输入www.pimow.com。浏览器会查看浏览器自身的dns缓存,如果没有就找系统的dns缓存,没有就根据系统配置的dns地址去解析获得ip。
2:浏览器根据请求组装报文,然后建立tcp连接发送报文。

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 一、什么是TCP/IP 网络和协议 1. TCP/IP是一类协议系统,它是一套支持网络通信的协议集合。网络是计算机...
    karlon的马甲阅读 6,607评论 1 24
  • # 图解TCP/IP 标签(空格分隔): 2018招聘 --- ##第1章 网络基础知识 ### ### 1.1 ...
    Kai_a3da阅读 1,476评论 0 2
  • 当电话少了,等待变成唯一可以做的事情,人生变的左左右右。 当一个人的孤独成为习惯,无法伪装的面对那些无聊的人,...
    陈艳华_925c阅读 291评论 2 2
  • 前两天,偶然在地方台看到一则新闻,一位六十多岁的老人,为了女儿的幸福,谎称外出打工,实为在外流浪拾荒。报道称,老人...
    李在在阅读 415评论 0 2
  • 这是离开学校的第5天,也是和她未见的第7天。 认识她是因为在同一个组织当干事,她在组织部,我在宣传部。我们并没...
    云曦之下阅读 310评论 0 0