JSP 基础:深入理解前后端交互与核心对象
虽然 JSP 是二十年前的老框架,但它作为讲解前后端不分离架构的经典案例,其核心价值在于演示了前端 HTML/CSS 如何嵌入 Java 后端代码。这种请求 - 响应模型在现代 Vue3 等框架中依然有迹可循。
核心交互对象
在 Java Web 开发中,处理前后端交互主要依赖以下几个内置对象。不必死记硬背所有细节,理解它们的数据流向即可:
| 对象 | 创建位置 | 主要作用 | 数据流向 |
|---|---|---|---|
| request | 服务器端 | 封装请求信息 | 前端 → 后端 |
| response | 服务器端 | 封装响应信息 | 后端 → 前端 |
| session | 服务器端 | 维护用户会话 | 双向 |
| application | 服务器端 | 全局共享数据 | 双向 |
| Cookie | 服务端创建/客户端存储 | 小数据持久化 | 双向 |
选择建议:临时数据传递用
request,用户状态保持用session,小数据持久化用Cookie,全局共享数据用application。
客户端与服务端的界定
很多人容易混淆这里的概念。在 request 对象的上下文中:
- 客户端(Client):指浏览器(Chrome、Firefox 等)、移动端 App 或发起 HTTP 请求的任何设备。它不是 JSP 页面本身。
- 服务器端(Server):指 Tomcat 容器 + Servlet/JSP 代码,负责处理业务逻辑。
请求流程解析
一个典型的登录交互包含以下阶段:
- 初始化:Tomcat 启动后,首次访问 JSP 时会将其编译为 Servlet。
- 请求发起:用户在浏览器输入 URL 或提交表单,向服务器发送 HTTP 请求。
- 数据处理:服务器接收请求,创建
request对象封装参数,执行业务逻辑。 - 响应返回:服务器生成 HTML 内容,通过
response对象返回给浏览器渲染。
实战示例:登录表单
我们通过一个简单的登录场景来串联上述流程。假设有一个 JSP 登录页面.jsp 和一个 。

