• JavaWeb---- (1)互联网通信流程(超详细)



    在这里插入图片描述

    前言:涉及技术

    • 控制浏览器行为技术:HTML、CSS、JavaScript
    • 控制硬盘上数据库行为技术:MySQL(数据库服务器管理使用) 、JDBC规范
    • 控制服务器端java行为技术:Http服务器、Servlet、JSP
    • 互联网通信流程开发规则:MVC
    • 贯穿项目:在线考试管理项目

    1.什么是互联网通信?

    • 两台计算机通过网络实现文件共享行为,就是互联网通信

    2.互联网通信角色划分

    • 客户端计算机:用于发送请求,来索要资源文件
    • 服务端计算机:用于接收请求,并提供对应的资源

    3.互联网通信模型

    (1)C/S模型

    C:Client software 客户端软件

    • 1)客户端软件专门安装在客户端计算机上
    • 2)帮助客户端计算机向指定服务器端计算机发送请求,索要资源文件
    • 3)帮助客户端计算机将服务器端计算机发送回来【二进制数据】解析为【文字,数字,图片,视频,命令】

    B:server software 服务器软件

    • 1)服务器软件专门安装在服务端计算机中
    • 2)服务器用来接收来自特定的客户端软件发送请求
    • 3)服务器软件在接收到请求之后自动的在服务器端计算机上定位被访问的资源文件
    • 4)服务器软件自动的将定位的文件解析为【二进制数据】通过网路发送回发起请求的客户端软件上

    适用场景
    C/S通信模型普遍用于个人娱乐市场,比如【微信,淘宝,京东,视频软件,大型网络游戏】企业办公中相对应用较少。

    优缺点

    • 优点:1)安全性较高
         2)有效降低服务端计算机计算压力
    • 缺点:
         1)增加客户获得服务成本
         2)更新较为繁琐

    (2)B/S通信模型

    B brewser 浏览器

    • 1)浏览器安装在客户端计算机软件
    • 2)可以向任意服务器发送请求,索要资源文件
    • 3)可以将服务器返回的【二进制数据】解析为【文件,数字,图片,视频,命令】

    S server software 服务器软件

    • 1)服务器软件专门安装在服务端计算机上
    • 2)可以接收任意浏览器发送请求
    • 3)自动的在服务端计算机上定位被访问的资源文件
    • 4)自动的将定位的资源文件内容以二进制形式发送回发起请求的浏览器上

    适用场景

    • 优点:1)不会增加用户获得服务的成本
         2)几乎不需要更新浏览器

    • 缺点:
         1)几乎无法有效对服务端计算机资源文件进行保护
         2)服务端计算压力异常巨大----->【B/S通信下的高并发解决方案】

    4.共享资源文件

    (1)什么是共享资源文件

    可以通过网络进行传输的文件都被称为共享资源文件
    所有的文件内容都可以通过网络传输,所有的文件都是共享文件

    (2)Http服务器下对于共享资源文件分类

    • 1)静态资源文件
    • 2)动态资源文件

    (3)静态资源文件

    • 1)如果文件内容是固定,这种文件可以被称为【静态资源文件】
    • 2)如果文件存放不是内容而是命令,这些命令只能在浏览器编译与执行,这种文件可以被称为【静态资源文件】(.html .css .js)

    (4)动态资源文件

    • 如果文件存放命令,并且命令不能在浏览器编译与执行,这种文件可以被称为【动态资源文件】(.class)

    (5)静态资源文件与动态资源文件调用区别

    • 静态文件被索要时,Http服务器直接通过【输出流】将静态文件中内容或者命令以【二进制形式】推送给发起请求浏览器
    • 动态文件被索要时,Http服务器需要创建当前class文件的实例对象,通过实例对象调用对应的方法处理用户请求,通过【输出流】将运行结果以【二进制形式】推送给发送请求的浏览器
      在这里插入图片描述

    流程图
    在这里插入图片描述

    5.开发人员在互联网通信流程担负职责

    • (1)控制浏览器行为
    • (2)开发动态资源文件
      在这里插入图片描述
      在这里插入图片描述
  • 相关阅读:
    word的分隔符和分页符
    深夜小酌,50道经典SQL题,真香~
    【进程管理】认识系统调用函数fork
    2023后端面试题(持续性更新)
    SpringBoot启动时加载
    Java回顾-网络编程
    Redis的发布和订阅
    基于Java的音乐网站管理系统设计与实现(源码+lw+部署文档+讲解等)
    前端菜鸡流水账日记 -- git管理工具(多版本)
    又一款机器学习模型解释神器:LIME
  • 原文地址:https://blog.csdn.net/qq_61899969/article/details/126909115