HTTP
一、概念
Hyper Text Transfer Protocol,超文本传输协议,规定了浏览器和服务器之间数据传输的规则。
二、特点
- 基于TCP协议:面向连接,安全。
- 基于请求-响应模型的:一次请求对应一次响应。
- HTTP协议是无状态的协议:对于事务处理没有记忆能力。每次请求-响应都是独立的。
- 缺点:多次请求间不能共享数据。
- 优点:速度快。
三、请求协议
GET/POST:
-
请求行
请求数据的第一行(请求方式、资源路径、协议)。
-
请求头
第二行开始,格式为:key: value。
POST:
-
请求体
post 请求特有,存放请求参数。
GET请求与POST请求的区别:
- GET:请求参数在请求行中,没有请求体,如:/brand/findAll?name=OPPO&status=1。GET请求大小是有限制的。
- POST:请求参数在请求体中,POST请求大小是没有限制的。
四、响应协议
-
响应行
响应数据第一行(协议、状态码、描述)。
-
状态码的分类:
-
常见的状态码:
-
状态码大全:https://cloud.tencent.com/developer/chapter/13553
-
常见的响应头:
-
-
响应头
第二行开始,格式 key: value
-
响应体
最后一部分,存放响应数据。
五、协议解析
Web 服务器 — Tomcat
Tomcat
一、简介
-
概念
Tomcat 是 Apache 软件基金会一个核心项目,是一个开源免费的轻量级 Web 服务器,支持 Servlet/JSP 少量 JavaEE 规范。也被称为 web 容器、servlet 容器。
-
JavaEE
Java Enterprise Edition,Java企业版。指lava企业级开发的技术规范总和。包含13项技术规范:JDBC、INDI、EJB、RMI、JSP、Servlet、XML、JMS、Java IDL、JTS、JTA、JavaMail、JAF
-
Tomcat 也被称为 Web容器、Servlet容器。Servlet程序需要依赖于Tomcat才能运行
-
官网:https://tomcat.apache.org/
二、基本使用
-
下载:官网下载,地址 https://tomcat.apache.org/download-90.cgi
-
安装:绿色版,直接解压即可
-
卸载:直接删除目录即可
-
启动:双击:bin\startup.bat
-
控制台中文乱码:修改conf/logging.properties
java.util.logging.ConsoleHandler.level = FINE java.util.loqging.ConsoleHandler formatter = org.apache.juli.OneLineFormatter java.util.logging.ConsoleHandler.encoding=GBK
-
-
关闭:
- 直接x掉运行窗口:强制关闭
- bin\shutdown.bat:正常关闭
- Ctrl+C:正常关闭
-
常见问题
-
启动窗口一闪而过:检查 JAVA HOME 环境变量是否正确配置
-
端口号冲突:找到对应程序,将其关闭掉
-
配置 Tomcat 端口号(conf/server.xml)
<Connector port="8080" protocol="HTTP/1.1" ConnectionTimeout="20000" redirectPort="8443" />
- 注意:HTTP协议默认端口号为80,如果将Tomcat端口号改为80,则将来访问Tomcat时,将不用输入端口号。
-
Tomcat 部署项目
将项目放置到 webapps 目录下,即部署完成。
-
三、入门程序解析
- 起步依赖
- spring-boot-starter-web
- spring-boot-starter-test
- 内嵌 Tomcat 服务器
将项目放置到 webapps 目录下,即部署完成。
三、入门程序解析
- 起步依赖
- spring-boot-starter-web
- spring-boot-starter-test
- 内嵌 Tomcat 服务器
- 基于 Springboot 开发的 web 应用程序,内置了 tomcat 服务器,当启动类运行时,会自动启动内嵌的 tomcat 服务器。