IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 网络协议 -> JavaWeb_servlet核心技术(1) -> 正文阅读

[网络协议]JavaWeb_servlet核心技术(1)

基本概念

C/S架构(客户端/服务器模式)

这种结构将需要处理的业务合理地分配到客户端和服务器端,客户端通常负责完成与用户的交互任务,服务器通常负责数据的管理(增删改查)
如:QQ,英雄联盟,迅雷
优点:

  • 客户端的界面和功能都是比较丰富的,因为其实可以理解为部分业务交给客户端完成
  • 应用服务器(安装在硬件服务器上的服务器软件)的负荷较轻
  • 响应速度较快,因为只有客户端和服务器这一层交互
    缺点:
  • 适用面窄(玩英雄联盟需下载客户端),用户群固定
  • 维护和升级的成本高,所有的客户端都需要更新版本

B/S 架构(浏览器/服务器模式)

该结构将系统功能实现的主要业务逻辑集中到服务器端,极少数业务逻辑在浏览器实现,浏览器通常负责完成与用户的交互任务,服务器通常负责数据的管理
如:淘宝,JD等
优点:

  • 无需安装客户端,只要有浏览器即可
  • 适用面广,用户群不固定
  • 通过权限控制实现多客户访问的目的,交互性较强
  • 维护和升级的成本低,无需更新所有客户端版本
    缺点
  • 应用服务器的负荷较重
  • 浏览器的界面和功能想要达到客户端的丰富程度需要花费大量的成本
  • 在跨浏览器上不尽如人意,适配比较麻烦
    Java大部分会用于B/S架构的开发

JavaWeb的概念

Web这里表示互联网上供外界访问的资源
互联网上供外界访问的资源主要分为以下两种:

  • 静态资源:主要指Web页面中供人们浏览的数据始终是不变。
  • 动态资源:主要指Web页面中供人们浏览的数据由程序产生,不同时间点访问页面看到的内容各不相同
    JavaWeb主要指使用Java语言进行动态Web资源开发技术

现在基本的B/S架构基本示意图

在这里插入图片描述

HTTP协议(超文本传输协议)

HTTP协议的概念

HTTP协议是一种应用层协议,是用来规范浏览器与Web服务器之间如何通讯的数据格式,主要涉及浏览器的发请求格式和服务器的响应格式
在这里插入图片描述
http和https其实都是通信协议,HTTP默认的端口号为80,HTTPS默认的端口号为443。HTTP协议通常承载于TCP协议之上

HTTP请求格式

客户端发送一个HTTP请求到服务器的请求消息主要包括:请求行、请求头、空白行和请求体:

  • 请求行用来说明请求类型和要访问的资源以及所使用的HTTP版本,格式为:请求类型 请求的路径 协议的版本(1.1)
  • 请求头是紧接着请求行之后的部分,用来说明服务器要使用的附加信息,格式 (key:value): 主机 请求长度 请求的浏览器相关信息
  • 空白行就是请求头部的空行,即使后面的请求数据为空则必须有空行
  • 请求体也叫请求数据,可以添加任意的其他数据
    HTTP例子
POST /task01_demo01/demo1.html HTTP/1.1 //请求行,post类型
Host: localhost:8088 //请求的服务器的ip和端口号
Content-Length: 21 //数据内容长度
Cache-Control: max-age=0 //有效期
User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64) //主机浏览器信息

name=scott&pwd=123456//请求体 用户名 密码

HTTP响应格式

通常情况下服务器接收并处理客户端发过来的请求后会返回一个HTTP的响应消息,主要包括:响应行、响应头、空白行和响应体

  • 响应行用来说明HTTP协议版本号和状态码以及状态消息,格式如下: 协议的版本(1.0 1.1) 状态码 (200 成功 404 路径错误 500 服务错误) 状态信息
  • 响应头用来说明客户端要使用的一些附加信息,格式(key:value)
  • 空白行就是响应头部的空行,即使后面的请求数据为空则必须有空行
  • 响应体用来服务器返回给客户端的文本信息,即附加的数据内容
    例子
HTTP/1.1 200 OK //200处理成功 响应行
Content-Type: text/html //内容类型
Content-Length: 588 //内容长度
Date: Thu, 08 Sep 2021 12:59:54 GMT //日期

<html><head><title>示例1</title></head> 
<body><h1>这是一个HTML页面</h1></body> 
</html>

Tomcat服务器

基本概念

Tomcat 服务器是一个开源的轻量级Web应用服务器,在中小型系统和并发量小的场合下被普遍使用,是开发和调试Servlet、JSP 程序的首选

下载安装

在这里插入图片描述
这里下载了8.55版本

  • bin主要存放二进制可执行文件和脚本。
  • conf 主要存放各种配置文件。
  • lib 主要用来存放Tomcat运行需要加载的jar包。
  • logs 主要存放Tomcat在运行过程中产生的日志文件。
  • temp 主要存放Tomcat在运行过程中产生的临时文件。
    -webapps 主要存放应用程序,当Tomcat启动时会去加载该目录下的应用程序。
  • work 主要存放tomcat在运行时的编译后文件,例如JSP编译后的文件

启动与关闭

  • 启动方式:使用bin目录下的批处理文件startup.bat来启动Tomcat服务器,若出现一个毫秒数说明启动成功
    在这里插入图片描述
    也可在网页给tomcat发送一个http请求
    http://localhost:8080/
    localhost指的是本机
    其中8080是默认端口号

  • 关闭方式 :使用bin目录下的批处理文件shutdown.bat来关闭Tomcat服务器,或者直接叉掉
    乱码解决方式:
    在这里插入图片描述UTF-8改成GBK
    配置环境变量CATALINA_HOME可让Tomcat服务器可以在任意路径启动

配置文件

  网络协议 最新文章
使用Easyswoole 搭建简单的Websoket服务
常见的数据通信方式有哪些?
Openssl 1024bit RSA算法---公私钥获取和处
HTTPS协议的密钥交换流程
《小白WEB安全入门》03. 漏洞篇
HttpRunner4.x 安装与使用
2021-07-04
手写RPC学习笔记
K8S高可用版本部署
mySQL计算IP地址范围
上一篇文章           查看所有文章
加:2021-10-30 12:49:11  更:2021-10-30 12:50:12 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年7日历 -2024/7/1 21:49:51-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码