一、课程概述

JavaWeb课程核心内容:ServletJSP数据库连接

课程定位: 本课程聚焦JavaWeb开发的底层技术,围绕“请求-响应”、“页面渲染”、“数据持久化”三大核心场景,系统讲解Servlet(服务端逻辑处理)、JSP(动态页面渲染)和数据库连接(数据持久化)三大技术模块。通过“理论+实验+项目实战”的模式,建立JavaWeb开发的底层认知,掌握从用户请求到数据存储的完整链路开发能力,为后续学习Spring Boot、SSM等框架奠定坚实基础。

核心内容: 课程围绕“用户发起请求 → 服务端处理(Servlet)→ 数据存储(数据库)→ 服务端处理(Servlet)→ 页面响应(JSP)”的完整Web网站开发流程展开,具体内容包括:

1.Servlet:Web应用的“控制者”

  • Servlet核心概念:什么是Servlet?它在JavaWeb中的角色(请求处理器);Servlet的生命周期(初始化、服务、销毁)。

  • 请求与响应机制:HTTP请求/响应格式(GET/POST区别、请求头/参数/体解析、响应状态码);HttpServletRequest与HttpServletResponse对象的使用。

  • Servlet配置与映射:传统web.xml配置与注解(@WebServlet);多Servlet协作与请求转发(RequestDispatcher)、重定向(sendRedirect())。

  • 会话管理:Cookie与Session的区别与应用(用户登录状态保持、购物车功能);Session失效机制与优化。

2.JSP:动态页面的“展示者”

  • JSP基础语法:JSP页面结构(HTML + JSP标签 + Java代码);脚本片段(<% %>)、表达式(<%= %>)、声明(<%! %>)的使用场景与注意事项。

  • JSP指令与动作:<%@ page %>(编码、导入类)、<%@ include %>(静态包含)、<jsp:include>(动态包含);<jsp:forward> 与Servlet转发的协同。

  • JSTL与EL表达式:为什么需要JSTL(替代复杂Java代码)?核心标签库(c:forEach、c:if)的使用;EL表达式(${})快速获取请求/会话/应用作用域数据。

  • MVC模式实践:如何在JSP中分离“视图”与“逻辑”(避免页面嵌入大量Java代码);Servlet作为控制器、JSP作为视图的分工设计。

3.数据库连接:数据持久化的“沟通者”

  • 数据库基础:关系型数据库(MySQL)与SQL基础(增删改查、联表查询);JDBC核心组件(DriverManager、Connection、PreparedStatement、ResultSet)。

  • JDBC连接流程:加载数据库驱动 → 建立连接(DriverManager.getConnection())→ 执行 SQL(PreparedStatement 防 SQL 注入)→ 处理结果集 → 关闭资源。

  • 数据库连接池:为什么需要连接池(提升性能、复用连接)?常见的连接池的配置与使用。

  • 分层设计实践:DAO(Data Access Object)模式封装数据库操作;Service层调用DAO完成业务逻辑(如用户注册时校验用户名唯一性)。

学习目标:

  1. 独立开发Web应用核心功能:能编写Servlet处理用户请求,用JSP渲染动态页面,并通过JDBC实现数据存储与查询。
  2. 理解Web开发生命周期:从HTTP请求到页面响应的完整链路(请求解析 → 业务逻辑 → 数据操作 → 视图渲染)。
  3. 解决常见开发问题:如Session失效、SQL注入防护、连接池配置异常、JSP页面数据不更新等。
  4. 完成综合项目:通过实战项目,整合Servlet、JSP、数据库技术,完成可运行的Web应用。

二、准备工作

1. 硬件与系统要求

  • 操作系统:Windows 11+/macOS 10.15+/CentOS 7+。

  • 硬件建议:内存 ≥8GB(Tomcat、IDE和MySQL运行需资源)、磁盘空间 ≥20GB(JDK、IDE、数据库等)。

2. 软件下载

  • JDK:官网链接

    Java Development Kit(JDK)是 Java 编程的核心工具包,不同版本的 JDK 引入了各种新特性、性能优化和安全性增强。

    以下是 JDK LTS(长期支持版本)对比

    JDK 8 JDK 11 JDK 17 JDK 21
    发布时间 2014-03 2018-09 2021-09 2023-09
    LTS 支持截止 2030-12 2026-09 2029-09 2031-09
    核心特性 - Lambda 表达式
    - Stream API
    - 新日期时间 API(java.time)
    - HTTP Client API
    - ZGC(实验性)
    - Flight Recorder
    - 密封类
    - 模式匹配
    - ZGC 生产可用
    - 虚拟线程
    - 分代 ZGC
    - 记录模式匹配
    性能优化 Parallel GC 为主
    - G1 GC 可选
    G1 GC 优化
    - ZGC 初步成熟
    ZGC 正式版
    - Shenandoah GC 支持
    虚拟线程优化
    - 分代 ZGC 降低内存占用
    语言特性 函数式编程基础(Lambda) var 关键字
    - Record 预览
    密封类
    - 模式匹配增强
    隐式类
    - 字符串模板
    生态兼容性 绝大多数遗留系统
    - Spring Boot 1.x
    Spring Boot 2.x 兼容 Spring Boot 3.x 最低要求 Spring Boot 3.x+ 优化支持
    适用场景 维护旧系统
    - 中小规模应用
    传统企业系统过渡 稳定生产环境
    - 云原生基础
    高并发云原生应用
    - 前沿技术探索
  • Tomcat:官网链接

    推荐版本9/10.1/11,根据JDK版本选择。由于开发中通常由IDE控制Tomcat的运行状态,所以下载Tomcat的zip压缩包即可。

    选择Tomcat版本:Apache Tomcat是Jakarta EE(原 Java EE)技术的开源实现,不同版本的Tomcat支持不同规范的版本。

    Tomcat版本 支持的Java版本 Servlet规范 JSP规范 JSTL规范 EL规范 WebSocket规范 JASPIC规范 注解规范 最新发布版本
    11.0.x 17及以上 6.0 3.1 2.0 4.0 3.1 3.0 3.0 11.0.10
    10.1.x 11及以上 6.0 3.1 2.0 4.0 3.1 3.0 3.0 10.1.44
    9.0.x 8及以上 4.0 2.3 1.0 3.0 2.0 2.1 2.1 9.0.108
  • IDE(二选一即可):

    IntelliJ IDEA Ultimate:官网链接

    IDEA是适用于Java和Kotlin开发的专业IDE,需要注意的是它的Community版本不支持Web应用开发;

    IntelliJ IDEA Ultimate

    Eclipse:官网链接

    使用Eclipse开发Web应用优先选用Eclipse IDE for Enterprise Java and Web Developers。

    Eclipse IDE for Enterprise Java and Web Developers

  • MySQL数据库:官网链接

    推荐版本8.4+,长期支持版。

    MySQL Community Server 8.4.6 LTS

  • MySQL数据库驱动:官网链接

    Connector/J 9.0实现了JDBC 4.2,支持MySQL 8.0及更高版本,支持JDK 8或更高版本。

    MySQL数据库驱动Connector/J 9.0

  • Visual C++可再发行程序包:官网链接

    Visual C++可再发行程序包安装 Microsoft C 和 C++ (MSVC) 运行时库。许多使用Microsoft C和C++工具生成的应用程序都需要这些库。 必须在安装MySQL数据库8.4之前在操作系统上安装Microsoft Visual C++可再发行程序包。可再发行程序包体系结构必须与应用的目标体系结构相匹配。

三、软件安装与配置

0.当前系统环境

本文使用64位Win11专业版操作系统作为开发环境配置演示,已安装截止目前(2025年08月23日)所有系统补丁,系统信息如下:

设备名称 HyperV-Win11

处理器 Intel(R) Xeon(R) E-2224 CPU @ 3.40GHz (3.41 GHz)

机带 RAM 16.0 GB

系统类型 64 位操作系统, 基于 x64 的处理器

注意,配置开发环境时:

操作系统的设备名称、登录使用的用户名,都不要包含中文字符!

操作系统的设备名称、登录使用的用户名,都不要包含中文字符!

操作系统的设备名称、登录使用的用户名,都不要包含中文字符!

64位Win11专业版操作系统信息

本文使用的软件版本信息如下:

软件名称 软件版本 文件名称 校验码 百度网盘
JDK 17.0.16 jdk-17.0.16_windows-x64_bin.exe sha256 网盘链接 提取码: cn6t
Tomcat 11.0.10 apache-tomcat-11.0.10-windows-x64.zip sha512 网盘链接 提取码: 7g2f
IntelliJ IDEA Ultimate 2025.2 ideaIU-2025.2.exe MD5 网盘链接 提取码: u3ht
Eclipse 2025-06 eclipse-jee-2025-06-R-win32-x86_64.zip sha1 网盘链接 提取码: xh3s
MySQL 8.4.6 mysql-8.4.6-winx64.msi MD5 网盘链接 提取码: eqmy
MySQL Connector/J 9.4.0 mysql-connector-j-9.4.0.zip MD5 网盘链接 提取码: va7f
Visual C++ 14.44.35211.0 VC_redist.x64.exe MD5 网盘链接 提取码: iwgn

1. JDK 安装

安装步骤:(提示:JDK的安装无需修改任何选项,一直下一步到结束。)

  • 双击打开“jdk-17.0.16_windows-x64_bin.exe”安装文件,按照如下步骤进行安装;

双击打开“jdk-17.0.16_windows-x64_bin.exe”安装文件

  • 点击“下一步”进入选择安装目录界面;

进入选择JDK安装目录界面

  • 保持默认安装目录即可,点击“下一步”开始安装;

开始安装JDK-01

开始安装JDK-02

开始安装JDK-03

  • 等待安装;

完成安装JDK

  • 完成后,点击关闭完成JDK的安装。

验证安装:

  • 按下“win+r”组合键,输入“cmd”回车,运行cmd.exe工具,如下:

运行cmd.exe工具-01

运行cmd.exe工具-02

  • 输入命令 java -version ,正确安装将显示当前系统JDK版本信息,如下:

输入命令java -version

  • 输入命令 javac -version,显示版本信息即成功,如下:

输入命令javac -version

环境变量配置:(安装多个版本的JDK时,需通过环境变量配置指定使用的JDK版本,此处略述如下)

  • 新建系统变量JAVA_HOME → 值为 JDK 安装路径(如 C:\Program Files\Java\jdk-17);

  • 编辑Path变量 → 添加 %JAVA_HOME%\bin。

2. Tomcat 安装

安装步骤:(提示:Tomcat的安装只需将压缩包内文件解压即可。)

  • 使用文件管理器或者WinRAR等压缩软件打开下载的Tomcat压缩包“apache-tomcat-11.0.10-windows-x64.zip”;

打开Tomcat压缩包

  • 将Tomcat压缩包中的文件夹“apache-tomcat-11.0.10”,解压到无中文路径(如 C:\apache\tomcat\)。

解压Tomcat压缩包-01

解压Tomcat压缩包-02

由于Tomcat服务器的启动、更新和关闭都可以通过IDE进行控制,至此Tomcat就算安装完毕。

Tomcat服务器的启动与关闭:(非必需操作,此处略述如下)

在Windows系统中,先完成上述省略的JDK环境变量配置操作:

启动用 Tomcat解压文件夹\bin\startup.bat;关闭用 Tomcat解压文件夹\bin\shutdown.bat。

  • 验证启动:浏览器访问 http://localhost:8080,看到 Tomcat 欢迎页即成功。

  • 常见问题:

    • 端口冲突(8080 被占用):修改 conf\server.xml 中的 <Connector port="8080"> 为其他端口(如 8081)。

    • 内存不足:调整 Tomcat解压文件夹\bin\catalina.bat中的 JVM 内存参数(如 -Xms512m -Xmx1024m)。

3. IDE 安装与基础配置(以Eclipse为例)

安装步骤:(提示:IDE二选一,用Eclipse或者IntelliJ IDEA Ultimate任一即可,Eclipse开源免费无需激活,但为英文版且不建议进行汉化)

  • 使用文件管理器或者WinRAR等压缩软件打开下载的eclipse压缩包“eclipse-jee-2025-06-R-win32-x86_64.zip”,如下:

打开eclipse压缩包

  • 将eclipse压缩包内的文件夹“eclipse”,解压到无中文路径(如 C:\),如下:

解压eclipse压缩包-01

解压eclipse压缩包-02

  • 双击打开“C:\eclipse\eclipse.exe”(可发送快捷方式到桌面),如下:

打开Eclipse软件

  • 第一次启动耗时较长,启动界面如下:

Eclipse软件启动

  • 启动过程中需指定workspace工作目录,保持默认即可,不建议勾选“Use this as the default and do not ask again”,如下:

指定workspace工作目录

  • 点击“Launch”后Eclipse继续启动,如下:

Eclipse软件继续启动

  • Eclipse启动完成后界面如下:

Eclipse软件启动完成

基础配置步骤01-修改Eclipse使用UTF-8字符集:

  • 点击Eclipse菜单栏Windows–>Preferences,如下:

打开Eclipse设置界面

  • 打开的Eclipse设置界面,如下:

Eclipse设置界面-00

  • 在Eclipse设置界面左侧选择General–>Context Types,选中“Java Class File”和“Text”,将Default encoding设置为“UTF-8”,点击“Update”,如下:

Eclipse设置界面-01

Eclipse设置界面-02

  • 展开上一步中的Text节点,选中JSP,将Default encoding设置为“UTF-8”,点击“Update”,最后点击“Apply and Close”关闭设置界面,如下:

Eclipse设置界面-03

基础配置步骤02-在Eclipse中添加Tomcat服务器:

  • 点击Eclipse菜单栏Windows–>Preferences,如下:

打开Eclipse设置界面

  • 打开的Eclipse设置界面,如下:

Eclipse设置界面-00

  • 在Eclipse设置界面左侧选择Server–>Runtime Environment,点击“Add”,如下:

Eclipse设置界面-01

  • 选择“Apache”节点下的“Apache Tomcat v11.0”,勾选“Create a new local server”,点击“Next”,如下:

Eclipse设置界面-02

  • 点击“Brownse”,如下:

Eclipse设置界面-03

  • 选择之前解压至C:\apache\tomcat目录里的apache-tomcat-11.0.10文件夹,点击“选择文件夹”,如下:

Eclipse设置界面-04

  • 确定“Tomcat installation directory”是apache-tomcat-11.0.10文件夹的路径,点击“Finish”,如下:

Eclipse设置界面-05

  • 确定“Runtime Environment”中出现刚添加的Tomcat服务器,点击“Apply and Close”关闭设置界面,如下:

Eclipse设置界面-06

  • 此时Eclipse软件左侧的项目管理器菜单中将会出现“Server”节点,展开后可以查看到Tomcat服务器的相关信息。此时可以点击Eclipse软件底部的Server选项卡中的“Tomcat v11.0 Server at localhost[Stopped,Republic]”,然后点击快捷按钮启动Tomcat服务器,如下:

通过Eclipse启动Tomcat服务器

  • 第一次启动可能因为防火墙阻挡导致Tomcat服务器启动失败,允许后再次启动Tomcat服务器即可。Tomcat服务器启动成功后,Server选项卡中的“Tomcat v11.0 Server at localhost[Stopped,Republic]”会变为“Tomcat v11.0 Server at localhost[Started,Republic]”,如下:

Eclipse成功启动Tomcat服务器

  • 关闭启动的Tomcat服务器,可以选中Server选项卡中正在运行的Tomcat服务器,然后点击快捷按钮停止Tomcat服务器,如下:

Eclipse关闭Tomcat服务器

基础配置步骤03-修改Eclipse中的编译兼容级别:

  • 点击Eclipse菜单栏Windows–>Preferences,如下:

打开Eclipse设置界面

  • 打开的Eclipse设置界面,如下:

Eclipse设置界面-00

  • 在Eclipse设置界面左侧选择Java–>Complier,修改“Complier compliance level”默认的“21”,改为当前系统安装的JDK版本号“17”,点击“Apply and Close”关闭设置界面,如下:

Eclipse设置界面-01

  • 在弹出的提示框中点击“Yes”确认修改Eclipse中的编译兼容级别,如下:

Eclipse设置界面-02

4. IDE 安装与基础配置(以 IntelliJ IDEA 为例)

安装步骤:(提示:IDE二选一,用Eclipse或者IntelliJ IDEA Ultimate任一即可,IntelliJ IDEA Ultimate需要激活,但有官方中文插件)

  • 双击打开下载的IDEA安装文件“ideaIU-2025.2.exe”,在安装界面中点击“下一步”,如下:

IDEA安装-01

  • 维持默认的安装目录即可,点击“下一步”,如下:

IDEA安装-02

  • 可以勾选创建桌面快捷方式,点击“下一步”,如下:

IDEA安装-03

  • 维持默认的选项即可,点击“安装”,如下:

IDEA安装-04

  • 等待安装完成,如下:

IDEA安装-05

  • 点击“完成”关闭安装界面,如下:

IDEA安装-06

  • 此时可以通过桌面生成的IDEA快捷方式运行IntelliJ IDEA,第一次运行可以根据区域选择相应的语言包,选好语言包后点击“下一个”,如下:

IDEA运行-01

  • 勾选“我确认我已阅读并接受此《用户协议》的条款”后点击“继续”,如下:

IDEA运行-02

  • 点击“不发送”,如下:

IDEA运行-03

  • 可以跳过导入其他软件的设置信息,如下:

IDEA运行-04

  • 第一次打开IntelliJ IDEA的界面如下:

IDEA运行-05

基础配置步骤01-激活IntelliJ IDEA:

  • 点击IntelliJ IDEA的无项目启动界面左下角的齿轮按钮,选择“管理订阅”,如下:

IDEA配置-01

  • 在“管理订阅”中选择JetBrains账户、激活码或者许可证服务器方式激活,如下:

IDEA配置-02

  • 按照国家规定,本文不涉及任何破解方式。本文采用JetBrains官方的教育授权的Ultimate订阅进行激活,激活后“管理订阅”将显示相应的激活信息,如下:(注意,不激活Ultimate订阅就无法进行Web应用开发

IDEA配置-03

基础配置步骤02-在IDEA中添加Tomcat服务器:

  • 点击IntelliJ IDEA的无项目启动界面左下角的齿轮按钮,选择“设置”,如下:

IDEA配置-04

  • 在“管理订阅”中展开“构建、执行、部署(Build, Execution, Deployment)”节点,选中“应用程序服务器”,点击“+”号,选择“Tomcat服务器”,如下:

IDEA配置-05

  • 在弹出的“Tomcat服务器”界面点击Tomcat主目录后的“浏览”图标,如下:

IDEA配置-06

  • 选择之前解压至C:\apache\tomcat目录里的apache-tomcat-11.0.10文件夹,点击“选择文件夹”,如下:

IDEA配置-07

  • IDEA会自动识别apache-tomcat-11.0.10文件夹中Tomcat服务器的版本信息,点击“确定”,如下:

IDEA配置-08

  • 可以在设置界面查看到Tomcat的相关信息,并且默认引入的两个涉及servlet和jsp的jar文件到库中,点击“确认”关闭设置界面,如下:

IDEA配置-09

5. MySQL数据库的安装

  • 安装MySQL8.4.6LTS之前需要安装Visual C++,否则打开“mysql-8.4.6-winx64.msi”安装MySQL时,安装程序会提示缺少VC++2019导致无法安装,如下:

MySQL安装-01

  • 打开之前下载的“VC_redist.x64.exe”,勾选同意协议后,点击“安装”,如下:

MySQL安装-02

  • 等待VC++安装完毕,如下:

MySQL安装-04

MySQL安装-05

  • 安转完毕后需要重启操作系统,如下:

MySQL安装-06

  • 重启操作系统后,再次打开“mysql-8.4.6-winx64.msi”安装MySQL,点击“Next”,如下:

MySQL安装-07

  • 勾选同意协议,点击“Next”,如下:

MySQL安装-08

  • 点击“Typical”,如下:

MySQL安装-09

Typical(典型安装)安装只安装MySQL服务器、MySQL命令行客户端和命令行实用程序。命令行客户端和实用程序包括mysqldump、myisamchk等。

Custom(定制安装)自定义安装需要的软件包。

Complete(完全安装)安装将安装软件包内包含的所有组件。完全安装软件包包括的组件包括嵌入式服务器库、基准套件、支持脚本和文档等。

  • 点击“Install”开始安装,如下:

MySQL安装-10

  • 等待MySQL安装,如下:

MySQL安装-11

MySQL安装-12

  • 安装完成后勾选“Run MySQL Configurator”,点击“Finish”,如下:

MySQL安装-13

  • 在打开的配置窗口中,点击“Next”,如下:

MySQL安装-14

  • 修改数据保存目录,维持默认即可,点击“Next”,如下:

MySQL安装-15

  • 选择数据库安装类型,维持默认即可,点击“Next”,如下:

MySQL安装-16

Developer Computer(开发者模式):该选项适用于典型个人电脑。MySQL服务器将被配置成使用最少的系统资源。

Server Computer(服务器模式):该选项适用于服务器,MySQL服务器可以协同其它应用程序一起运行。MySQL服务器将被配置成使用适当比例的系统资源。

Dedicated Computer(专用服务器模式):该选项表示该服务器只运行MySQL服务,假定运行没有运行其它应用程序。MySQL服务器将被配置成使用所有可用系统资源。

  • 设置MySQL的root用户密码,输入完成后,点击“Next”,如下:

MySQL安装-17

  • 设置Windows服务相关信息,维持默认即可,点击“Next”,如下:

MySQL安装-18

  • 设置MySQL服务器文件的权限,维持默认即可,点击“Next”,如下:

MySQL安装-19

  • 设置示例数据库,可以勾选安装“Sakila”和“World”两个数据库,点击“Next”,如下:

MySQL安装-20

  • 点击“Excute”开始配置MySQL数据库,如下:

MySQL安装-21

  • 等待配置完成,如下:

MySQL安装-22

  • 配置完成后,点击“Next”,如下:

MySQL安装-23

  • 点击“Finish”关闭配置窗口,如下:

MySQL安装-24

四、JavaWeb 项目创建与运行

1. 创建第一个 JavaWeb 项目(以Eclipse为例)

  • 双击“C:\eclipseeclipse.exe",或将其发送到桌面快捷方式后双击快捷方式,启动Eclipse,界面如下:

Eclipse软件启动

  • 启动过程中需指定workspace工作目录,保持默认即可,如下:

指定workspace工作目录

  • 点击“Launch”后Eclipse继续启动,如下:

Eclipse软件继续启动

  • 之前已经在Eclipse中配置了Tomcat服务器,Eclipse启动完成后界面左侧项目管理器中可以看到Server节点,如下:

Eclipse软件启动完成

  • 点击Eclipse菜单栏File–>New–>Project,如下:

Eclipse-新建项目-01

  • 在Web节点内选择“Dynamic Web Project”,点击“Next”,如下:

Eclipse-新建项目-02

  • 输入Project name,此处示例填写“JavaWeb”,确定Target Runtime为之前配置的Apache Tomcat v11.0,点击“Next”,如下:

Eclipse-新建项目-03

  • 查看Java源码构建路径即可,后期Java相关的源码都在该路径下创建,无需修改任何内容,点击“Next”,如下:

Eclipse-新建项目-04

  • 查看站点根目录路径即可,后期JSP、JS、CSS或前端框架都在该路径下创建,无需修改任何内容,点击“Finish”完成JavaWeb项目的创建,如下:

Eclipse-新建项目-05

  • 创建好JavaWeb项目后可以在Eclipse左侧项目管理器中展开新建JavaWeb项目节点,src/main/java用于创建java文件,包括包、类、接口以及servlet、listener、filter等;src/main/webapp用于创建jsp、html、js、css以及网页页面中使用的框架、图片等,至此JavaWeb项目创建完毕,如下:

Eclipse-新建项目-06

2. 运行第一个 JavaWeb 项目(以Eclipse为例)

  • 在Eclipse左侧项目管理器中展开JavaWeb项目节点,在src/main/webapp上鼠标右键,选择“New-JSP File”,如下:

Eclipse-运行项目-01

  • 在弹出的新建JSP文件窗口中修改文件名File Name为“index.jsp”,点击“Next”,如下:

Eclipse-运行项目-02

  • 勾选“Use JSP Template”使用HTML5模板创建JSP文件,点击“Finish”,如下:

Eclipse-运行项目-02

  • 在代码窗口显示的index.jsp文件的body标签中写入代码,此处示例写入“out.print("Hello world from JSP文件");”,注意用“<%”和“%>”包裹这行代码,点击保存按钮,再点击运行按钮,代码和界面如下:
<%@ page language="java" contentType="text/html; charset=UTF-8"
   pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
</head>
<body>
<%
   out.print("Hello World From JSP文件。");
%>
</body>
</html>

Eclipse-运行项目-02

  • 选中之前在Eclipse中配置好的“Tomcat v11.0 Server at localhost”,点击“Next”,一定要先选中Tomcat节点将其变为蓝色底色,否则下一步不会出现JavaWeb项目,如下:

Eclipse-运行项目-03

  • 确保JavaWeb项目在右侧,如果不在,可以在左侧选中JavaWeb项目后点击“Add”添加到右侧,最后点击“Finish”,如下:

Eclipse-运行项目-04

  • Eclipse会自动启动Tomcat服务器,将JSP转换输出到网页,操作系统会自动弹出浏览器访问该JavaWeb网站并显示该网页的内容,如下:

Eclipse-运行项目-05

  • 返回Eclipse软件,在src/main/java节点上鼠标右键,选择“New-Servlet”,如下:

Eclipse-运行项目-06

  • 在包名Java Package处输入“controller”,在类名Class name输入“HelloServlet”,注意大小写,点击“Next”,如下:

Eclipse-运行项目-07

  • 此处主要用于设置初始化参数和URL映射的mapping,维持默认即可,点击“Next”,如下:

Eclipse-运行项目-08

  • 此处主要用于添加servlet需要实现的接口和生成的成员方法,维持默认即可,确保doGet和doPost方法被勾选,点击“Finish”,如下:

Eclipse-运行项目-09

  • 在Eclipse中打开的名为“HelloServlet.java”的Servlet文件中,通过import语句导入Java.io.PrintWrite,保留类名前生成的注解“@WebServlet("/HelloServlet")”,并更改doGet方法中的代码,点击保存按钮,代码和界面如下:
// 默认生成的import略
import java.io.PrintWriter;// 导入Java.io.PrintWrite

@WebServlet("/HelloServlet") // 保留类名前生成的注解
public class HelloServlet extends HttpServlet {
	
   // 默认生成的其他成员变量和成员方法略
	protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
      // 更改doGet方法中的代码
		response.setContentType("text/html");
		PrintWriter out = response.getWriter();
		out.println("Hello World From Servlet文件。");		
	}
}

Eclipse-运行项目-10

  • 点击保存按钮后再次点击运行按钮,如下:

Eclipse-运行项目-11

  • 按照之前运行jsp文件的方式选择Tomcat服务器重新编译运行web项目,成功后在弹出的浏览器中即可查看Servlet文件执行的结果,如下:

Eclipse-运行项目-12

3. 创建第一个 JavaWeb 项目(以IDEA为例)

  • 双击安装IntelliJ IDEA后桌面生成的IDEA图标打开IDEA,当前系统中无IDEA创建的项目,IDEA界面如下:

IDEA-创建项目-01

  • 点击“新建项目”按钮,在弹出的“新建项目”对话框中选择新建Java项目,输入名称“JavaWeb”,构建系统先选择“IntelliJ”,检查JDK是否为之前安装的JDK版本,确认无误后点击“创建”按钮,如下:

IDEA-创建项目-02

  • 在打开的IEAD界面左侧找到新建的JavaWeb项目节点,选中后点击快捷键F4,或在JavaWeb项目节点上鼠标右键,选择“打开模块设置”,如下:

IDEA-创建项目-03

  • 在打开的“项目结构”窗口,左侧选择“模块”后,点击中间顶上的“+”号,选择“Web”,如下:

IDEA-创建项目-04

  • 此时JavaWeb项目下出现Web模块,如下:

IDEA-创建项目-05

  • 在“项目结构”窗口左侧选择“工件”,点击中间顶上的“+”号,点击“Web应用程序:展开型”,选择“源模块”,如下:

IDEA-创建项目-06

  • 在打开的“选择模块”对话框中选中当前项目JavaWeb,点击“确定”,如下:

IDEA-创建项目-07

  • 在“项目结构”窗口左侧选择“库”,点击中间顶上的“+”号,选择“Java”,如下:

IDEA-创建项目-08

  • 在弹出的“选择库文件”对话框中,定位到之前解压的Tomcat文件目录中的lib文件夹,选中其中的“servlet-api.jar”文件,点击“打开”,如下:

IDEA-创建项目-09

  • 在弹出的“选择模块对话框中”,选中当前的JavaWeb项目,点击“确定”,如下:

IDEA-创建项目-10

  • 最后确定“项目结构”中,“模块”、“库”和“工件”都修改完成,点击“确认”按钮关闭“项目结构”界面,如下:

IDEA-创建项目-11

4. 运行第一个 JavaWeb 项目(以IDEA为例)

  • 重回IDEA界面后可以在左侧项目管理器中发现JavaWeb项目节点下多出了“web”节点,该节点作为站点根目录用于创建jsp、html、js、css以及网页页面中使用的框架、图片等,此时项目还需要配置运行方式,点击IDEA顶部运行按钮左侧的“当前文件”,选择“编辑配置”,如下:

IDEA-创建项目-12

  • 在打开的“运行/调试配置”窗口,点击左侧顶部的“+”号,在弹出的菜单中展开“Tomcat服务器”节点,选择“本地”,如下:

IDEA-创建项目-13

  • 点击“修复”后点击“确认”,关闭“运行/调试配置”窗口,如下:

IDEA-创建项目-14

  • 此时在IDEA界面顶部,运行按钮左侧变为“Tomcat”。再次找到JavaWeb项目节点,选中后点击快捷键F4,或在JavaWeb项目节点上鼠标右键,选择“打开模块设置”,如下:

IDEA-创建项目-14

  • 在打开的“项目结构”窗口,左侧选择“模块”后,点击中间“JavaWeb”节点,点击右侧的“依赖”选项卡,点击下面的“+”号,选择“库”,如下:

IDEA-创建项目-15

  • 在弹出的“选择库”窗口中,选中刚才配置的Tomcat服务器,点击“添加所选项”,如下:

IDEA-创建项目-16

  • 点击“确认”按钮关闭“项目结构”界面,如下:

IDEA-创建项目-17

  • 在“web”节点上鼠标右键,选择“新建”,点击“JSP/JSPX 页面”,如下:

IDEA-创建项目-18

  • 输入文件名“index”,文件类型默认JSP文件即可,回车确认,如下:

IDEA-创建项目-19

  • 在代码窗口显示的index.jsp文件的body标签中写入代码,此处示例写入“out.print("Hello world from JSP文件 in IDEA。");”,注意用“<%”和“%>”包裹这行代码,代码写好后保存,点击顶部“Tomcat”旁的运行按钮,代码和界面如下:
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<html>
<head>
    <title>Title</title>
</head>
<body>
<%
    out.print("Hello world from JSP文件 in IDEA。");
%>
</body>
</html>

IDEA-创建项目-20

  • Tomcat服务器启动完成后会自动打开浏览器访问相应的资源将其显示出来,如下:

IDEA-创建项目-21

  • 在JavaWeb项目的“src”节点上鼠标右键,点击“新建”,选择“软件包”,如下:

IDEA-创建项目-22

  • 在弹出的“新建软件包”对话框中输入包名“controller”,回车确认,如下:

IDEA-创建项目-23

  • 在刚才新建的“controller”包上鼠标右键,点击“新建”,选择“Java 类”,如下:

IDEA-创建项目-24

  • 在弹出的“新建Java类 / 文件”对话框中选择“类”,输入类名“HelloServlet”后,回车确认,如下:

IDEA-创建项目-25

  • 在打开的“HelloServlet.java”文件中,类名之后添加“extends HttpServlet”,如下:

IDEA-创建项目-26

  • 将光标定位到HelloServlet类中后,通过鼠标右键-生成,或者Alt+Insert快捷键打开生成菜单,选择“重写方法”,如下:

IDEA-创建项目-27

  • 在弹出的“选择覆写/实现的方法”对话框中,选中“doGet()”方法,点击“确定”,如下:

IDEA-创建项目-28

  • 在生成的“doGet()”方法中输入代码,代码和界面如下:
package controller;

import jakarta.servlet.ServletException;
import jakarta.servlet.http.HttpServlet;
import jakarta.servlet.http.HttpServletRequest;
import jakarta.servlet.http.HttpServletResponse;

import java.io.IOException;
import java.io.PrintWriter;

public class HelloServlet extends HttpServlet {
    @Override
    protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
        // 更改doGet方法中的代码
        resp.setContentType("text/html");
        PrintWriter out = resp.getWriter();
        out.println("Hello World From Servlet文件 in IDEA。");
    }
}

IDEA-创建项目-29

  • 打开JavaWeb项目中的“web/WEB-INF/web.xml”文件,在添加Servlet配置信息,代码和界面如下:
<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns="http://xmlns.jcp.org/xml/ns/javaee"
         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-app_4_0.xsd"
         version="4.0">
    <servlet>
        <servlet-name>HelloServlet</servlet-name>
        <servlet-class>controller.HelloServlet</servlet-class>
    </servlet>
    <servlet-mapping>
        <servlet-name>HelloServlet</servlet-name>
        <url-pattern>/helloservlet</url-pattern>
    </servlet-mapping>
</web-app>

IDEA-创建项目-30

  • 保存所有文件,点击IDEA顶部“Tomcat”旁的重启按钮,如下:

IDEA-创建项目-30

  • 在弹出的对话框中选择重启服务器,点击“确定”,如下:

IDEA-创建项目-31

  • 等待Tomcat服务器重启完毕,在弹出的浏览器的地址栏中添加“/helloservlet”,回车后即可访问Serlver,如下:

IDEA-创建项目-31

添加新评论