## 2. Java Web基础回顾和增强 ### 2.1 HTTP协议(重点掌握) 推荐阅读 [《图解http》读书笔记](https://juejin.cn/post/6903526294806331400) [pdf下载](./resources/《图解http》读书笔记%20-%20掘金.pdf) [PPT](./resources/HTTP协议-黑马.pptx) #### 2.1.1 浏览器与Web服务器的工作流程 - **请求过程:** 用户在浏览器中输入URL地址后,浏览器向服务器发送HTTP请求。 - **响应过程:** 服务器接收到请求后处理并返回HTTP响应给浏览器。 - **交互细节:** 包括DNS解析、建立TCP连接、发送HTTP请求、接收HTTP响应、关闭连接等步骤。 #### 2.1.2 HTTP请求与响应结构 - **请求行:** 包含方法、URL、HTTP版本。 - **请求头:** 包含客户端信息、认证信息等。 - **请求体:** 包含POST请求的数据。 - **响应行:** 包含HTTP版本、状态码、状态消息。 - **响应头:** 包含服务器信息、缓存控制等。 - **响应体:** 包含服务器返回的数据。 #### 2.1.3 URL - **构成:** 协议、主机名、端口号、路径、查询字符串。 - **示例:** `https://example.com/path/to/resource?param1=value1¶m2=value2` #### 2.1.4 HTTP方法 - **GET:** 请求指定的页面信息并将其返回。 - **POST:** 向指定资源提交数据进行处理请求(例如提交表单)。 - **PUT:** 从客户端向服务器发送新的数据,并要求服务器覆盖原位置上的数据。 - **DELETE:** 请求服务器删除指定的页面。 #### 2.1.5 HTTP状态码 - **2xx 成功:** 请求已成功被服务器接收、理解,并接受。 - **200 OK:** 请求已成功,请求所希望的响应头或数据体将随此响应返回。 - **3xx 重定向:** 需要客户端采取进一步的操作才能完成请求。 - **301 Moved Permanently:** 请求的资源已被永久移动到新位置。 - **302 Found:** 服务器目前从不同位置的资源响应请求,但请求者应继续使用原有位置来进行以后的请求。 - **4xx 客户端错误:** 请求包含语法错误或无法完成请求。 - **400 Bad Request:** 服务器不理解请求的语法。 - **401 Unauthorized:** 请求要求用户的身份认证。 - **403 Forbidden:** 服务器理解请求客户端的请求,但是拒绝执行此请求。 - **404 Not Found:** 请求失败,请求所希望得到的资源未被在服务器上发现。 - **5xx 服务器错误:** 服务器在处理请求的过程中发生了错误。 - **500 Internal Server Error:** 服务器遇到某种不可预知的情况。 - **503 Service Unavailable:** 由于临时的服务器维护或者过载,服务器当前无法处理请求。 #### 2.1.6 Cookie和Session - **Cookie:** - 存储在客户端的小型文本文件,用于跟踪用户状态。 - 可以设置有效期、路径、域名、安全标志等属性。 - **Session:** - 服务器端用来跟踪用户状态的一种机制。 - Session 通常使用Cookie来传递Session ID。 - 服务器通过Session ID来查找与特定用户相关的数据。 ### 2.2 HTML/CSS/JavaScript基础 [PPT](./resources/网页开发基础-黑马.pptx) #### 2.2.1 HTML5基础知识 (掌握) - **标签与属性:** HTML5引入了新的语义标签如`
`、`