Java Web开发基础学习

Tracksail
2025-11-09
点 赞
1
热 度
26
评 论
0

Java Web开发基础学习

1. Java Web基础概念

1.1 Web开发基本原理

HTTP协议基础

HTTP协议是Web通信的基础,采用请求-响应模型,具有以下特点:

  • 无状态协议,默认端口80 - 基于TCP/IP协议栈
  • 定义GET/POST/PUT/DELETE等方法
  • 包含请求头、请求体、响应头、响应体结构

客户端/服务器架构

经典的三层架构模式:

  1. 表示层:浏览器/客户端展示
  2. 逻辑层:服务器处理业务逻辑
  3. 数据层:数据库存取数据

Web容器作用

  • 管理Servlet生命周期
  • 协议支持(HTTP/HTTPS)
  • 线程池管理
  • 安全认证
  • JSP编译支持

1.2 Java Web技术栈

Servlet体系结构

Servlet核心组件包括:

  • javax.servlet.Servlet接口
  • GenericServlet抽象类
  • HttpServlet抽象类
  • 请求/响应对象(HttpServletRequest/HttpServletResponse)

JSP运行机制

JSP生命周期阶段:

  1. 转换阶段(页面编译)
  2. 编译阶段(生成Servlet类)
  3. 执行阶段(调用_jspService方法)

MVC设计模式 MVC组件职责:

  • Model:数据模型和业务规则
  • View:展示层(JSP等)
  • Controller:流程控制(Servlet等)

2. 开发环境搭建

2.1 基础工具安装

JDK配置

安装步骤:

  1. 下载对应版本JDK
  2. 配置环境变量(JAVA_HOME、PATH)
  3. 验证安装:java -version

Tomcat安装部署 配置要点:

  • 解压即用,无需安装
  • conf/server.xml配置端口
  • bin/startup.sh启动服务
  • webapps目录部署应用

IDE集成开发环境

推荐配置:

  • Eclipse/IDEA集成Tomcat
  • 自动热部署设置
  • 调试环境配置
  • Maven/Gradle集成

2.2 项目结构规范

WAR包标准结构 规范要求:

├── META-INF/
├── WEB-INF/
│ ├── web.xml
│ ├── classes/
│ └── lib/
└── 静态资源(js/css/images)

web.xml配置基础 核心配置项:

  • <servlet>和<servlet-mapping>
  • <filter>和<filter-mapping>
  • <listener>
  • <context-param>
  • <session-config>

3. Servlet核心技术

3.1 Servlet生命周期

init()/service()/destroy() 方法调用时机:

  • init():首次请求时调用一次
  • service():每次请求都调用
  • destroy():容器关闭时调用

3.2 核心API

HttpServletRequest 常用方法:

  • String getParameter(String name)
  • Object getAttribute(String name)
  • HttpSession getSession()

HttpServletResponse 常用方法:

  • PrintWriter getWriter()
  • void setContentType(String type)
  • void sendRedirect(String location)

ServletContext 主要功能:

  • 应用全局共享
  • getRealPath()获取物理路径
  • 存储应用级属性

4. JSP开发实践

4.1 JSP基础语法

脚本元素(<% %>) 脚本元素类型:

  • 声明:<%! 变量或方法声明 %>
  • 脚本:<% Java代码 %>
  • 表达式:<%= 表达式 %>

指令元素(<%@ %>) 常见指令:

  • page:<%@ page language="java" %>
  • include:<%@ include file="header.jsp" %>
  • taglib:<%@ taglib uri="" prefix="c" %>

动作元素(jsp:) 常用动作:

4.2 内置对象

request/response对象

  • request:封装客户端请求
  • response:封装服务器响应

session对象 会话管理:

  • setAttribute()
  • getAttribute()
  • getCreationTime()

5. MVC模式实现

5.1 分层架构设计

Model层实现 实现要点:

  • 实体类设计
  • DAO数据访问
  • Service业务逻辑

View层组织 最佳实践:

  • 使用模板技术 - 避免脚本代码
  • 分离HTML/CSS/JS

Controller路由 设计模式:

  • 前端控制器
  • 命令模式
  • RESTful风格

6. 进阶主题

6.1 状态管理

Cookie与Session 对比特点:

  • Cookie:客户端存储,有大小限制
  • Session:服务端存储,依赖Cookie/URL重写

6.2 过滤器与监听器

Filter链 工作流程:

  1. 预处理请求
  2. 传递给下一个Filter
  3. 后处理响应

6.3 安全基础

表单验证 验证策略:

  • 客户端验证
  • 服务端验证
  • 重复提交防护

现代开发趋势

  • JSP淡出:新项目已罕用JSP,本文4.x节仅作基础了解,不建议深入;若需服务器渲染,可转向 Thymeleaf、Freemarker 等现代模板引擎。
  • 前后端分离:主流组合 Spring Boot + REST API + Vue/React 已成为行业标配,后续学习可直接进入 Spring Boot 生态,绕过传统 WAR 包与 JSP 时代。

7. Java Web学习路径图

graph TD
    A[JavaSE基础] --> B[HTTP协议/Tomcat]
    B --> C[Servlet核心API]
    C --> D[JSP语法与内置对象]
    D --> E[纯手工MVC实战]
    E --> F[Filter/Listener/Session]
    F --> G[web.xml与注解并存]
    G --> H[Maven构建与WAR部署]
    H --> I[Spring入门]
    I --> J[Spring Boot+REST]
    J --> K[前后端分离(Vue/React)]
    K --> L[微服务/Cloud]

8. 结语

至此,Java Web 经典技术栈的“地基”已铺就:HTTP 协议、Servlet/JSP、MVC 三层、Filter/Session 与 web.xml 配置,掌握它们即可读懂遗留项目,也为后续直通 Spring Boot 与前后端分离架构奠定扎实根基。保持节奏,循序渐进,Java Web 世界自会豁然开朗。


用键盘敲击出的不只是字符,更是一段段生活的剪影、一个个心底的梦想。希望我的文字能像一束光,在您阅读的瞬间,照亮某个角落,带来一丝温暖与共鸣。

Tracksail

intj 建筑师

站长

具有版权性

请您在转载、复制时注明本文 作者、链接及内容来源信息。 若涉及转载第三方内容,还需一同注明。

具有时效性

文章目录

欢迎来到SailTrack的站点,为您导航全站动态

14 文章数
8 分类数
1 评论数
7标签数