JAVA WEB 全栈课程

Web 开发:从 B/S 架构
到 Spring 框架

系统解析:协议、Servlet、容器与 Spring 生态

B/S 架构深度解析

浏览器 / 服务器模式

访问网站完成操作,本质上都是基于 Web 的 B/S (Browser/Server) 架构。

  • 客户端: 只需安装通用浏览器。
  • 逻辑与数据: 全部存储并运行在服务器端。
  • 分发: 浏览器请求页面,服务器返回资源并展示。

[ B/S 架构示意图:终端 -> 互联网 -> 数据中心 ]

浏览器请求页面的全生命周期

1. 建立 TCP 连接

通过三次握手与服务器建立稳定的双向数据通路。

2. 发送 HTTP 请求

将请求路径、主机名及浏览器信息打包发送给服务器。

3. 渲染网页内容

接收响应,解析 HTML 并呈现给用户最终的交互界面。

常用 HTTP 请求头字段

Header 字段 核心功能与说明
Host表示请求的主机名(用于区分同一服务器上的多个网站)。
User-Agent客户端标识,如 Chrome/79Mozilla/5.0
Accept浏览器能接收的资源类型(如 text/*image/*)。
Accept-Language浏览器偏好语言,用于返回不同语言版本的网页。
Accept-Encoding支持的压缩格式(如 gzip, deflate, br)。

Java Servlet:Web 开发核心

分层治理,各司其职

处理 TCP 连接、解析协议等底层琐事由 Web 服务器 (如 Tomcat) 负责。

开发者只需利用 Servlet API 编写业务逻辑。

// 编写自己的 Servlet
@WebServlet("/hello")
public class HelloServlet 
  extends HttpServlet {

  @Override
  protected void doGet(
    HttpServletRequest req, 
    HttpServletResponse resp) 
    throws IOException {
    
    // 逻辑:向浏览器返回文本
    resp.getWriter().write("Hello Web!");
  }
}

框架:巨人的肩膀

“框架是应用程序的骨架,它不只是能让你做什么,更是它规定你不能做什么。”

结构化

使混乱的代码逻辑变得清晰且模块化。

凝结经验

集成了前人解决通用问题的最佳实践。

Spring Boot 的革命性特点

  • 独立运行: 直接打包为 JAR 即可运行。
  • 内嵌容器: 无需外部安装 Tomcat。
  • 自动配置: 极大地简化了 Maven 和 XML 配置。
  • 自带监控: 对正在运行的项目提供实时监控。

# 运行一个 Spring Boot 应用

java -jar myapp.jar

课程总结

从底层的 HTTP 连接,到中层的 Servlet API,
再到现代化的 Spring Boot 框架,您已经掌握了 Java Web 的全貌。

Spring MVC MyBatis Maven