当前位置: 首页 > news >正文

Jakarta EE 实验 — Web 聊天室(JSP版)

Jakarta EE 实验  — Web 聊天室(JSP版)

       摘要:本文将基于 IntelliJ IDEA 2025.2.2、Jakarta EE 架构(使用 Jakarta Servlet API)、JDK 21 和 Tomcat 10+ 服务器,提供详细的实验步骤、完整的代码、详细的代码解释以及测试过程。整个实现严格遵循实验要求:基于 Servlet 的简易聊天室,支持登录、发送消息、查看在线用户、退出;添加敏感词过滤、权限控制、消息限制;使用指定的 JSP 页面、过滤器和监听器;web.xml 配置过滤器顺序、监听器和欢迎页。

注意:

  • 项目使用 Maven 构建,便于依赖管理。
  • 全局数据(在线用户列表、消息列表、在线人数)存储在 ServletContext 中,实现应用级共享。
  • 敏感词过滤:在 EncodingFilter 中处理 POST 请求的消息,简单替换示例敏感词(如 "badword" 替换为 "**")。您可扩展敏感词列表。
  • 消息限制:通过 web.xml 的 context-param 设置 maxMessages 为 50。
  • 代码风格:使用注解简化,但 web.xml 用于配置过滤器、监听器和欢迎页。
  • 假设项目名为 "WebChatRoom"。如果不同,请调整。

实验目的

(假设与要求一致:通过实现聊天室,掌握 Jakarta EE 中的 Servlet、JSP、Filter、Listener 等技术,理解会话管理、过滤器链、监听器生命周期等。)

实验要求

(已由用户提供,此处不再重复。)

详细的实验步骤

以下是使用 IntelliJ IDEA 2025.2.2 创建和运行项目的完整步骤。

步骤 1: 创建 Jakarta EE 项目

  1. 打开 IntelliJ IDEA 2025.2.2。
  2. 点击 "File" > "New" > "Project"。
  3. 选择 "Jakarta EE",选中 "Web Application" 模板。
  4. 项目名称:输入 "WebChatRoom"。
  5. Location:选择保存路径(如 E:\Project\00.JakartaEE\WebChatRoom)。
  6. Language:Java。
  7. Build System:Maven。
  8. JDK:选择 JDK 21。
  9. Application Server:添加 Tomcat 10+(下载并配置路径)。
  10. 点击 "Create"。IntelliJ 会生成基本结构,包括 pom.xml、src/main/java、src/main/webapp/WEB-INF/web.xml。

步骤 2: 配置项目和依赖

  1. 编辑 pom.xml 添加 Jakarta EE 依赖:
    <project xmlns="http://maven.apache.org/POM/4.0.0"xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"><modelVersion>4.0.0</modelVersion><groupId>edu.uestc</groupId><artifactId>WebChatRoom</artifactId><version>1.0-SNAPSHOT</version><packaging>war</packaging><dependencies><dependency><groupId>jakarta.platform</groupId><artifactId>jakarta.jakartaee-api</artifactId><version>10.0.0</version><scope>provided</scope></dependency></dependencies><build><plugins><plugin><groupId>org.apache.maven.plugins</groupId><artifactId>maven-compiler-plugin</artifactId><version>3.8.1</version><configuration><source>21</source><target>21</target></configuration></plugin></plugins></build>
    </project>
    
  2. 配置 Tomcat:
    • "Run" > "Edit Configurations" > 添加 "Tomcat Server" > "Local"。
    • Deployment 标签:添加 Artifact "WebChatRoom:war exploded"。
    • Application context:设为 "/WebChatRoom"(或 "/")。
    • 保存。

步骤 3: 创建包和文件

  1. 在 src/main/java 创建包:edu.uestc.webchatroomfilter.listener(监听器)、edu.uestc.webchatroomfilter.filter(过滤器)。
  2. 在 src/main/webapp 创建 JSP 文件:login.jsp、chat.jsp、logout.jsp。
  3. 编辑 web.xml(详见代码部分)。

步骤 4: 编写代码

复制以下完整代码到相应文件。

步骤 5: 运行和部署

  1. 运行 Maven "clean install"(Maven 工具窗口)。
  2. 点击 Run 按钮启动 Tomcat。</
http://www.dtcms.com/a/431352.html

相关文章:

  • P1471 方差
  • 【开题答辩全过程】以 Puk苍白游戏论坛网为例,包含答辩的问题和答案
  • Java包装类与泛型详解
  • 举报非法网站要求做笔录昌乐网站建设
  • 个人网站作品欣赏杭州开发网站的公司哪家好
  • 12-Redis+有序集合类型实战指南:从分数排序到排行榜场景落地
  • 延时任务之Redis 过期事件监听原理与缺陷
  • Redis 扩展数据类型
  • 汕头企业网站建设设计班级网站 模板
  • 拉格朗日乘子法
  • 电商网站设计是干什么的高碑店网站建设价格
  • 网站源代码制作四大门户网站对比分析
  • 教学网站开发背景及意义怎样下载黑龙江人社app
  • 系统环境异常、网络适配难,黑科技一站式解决
  • 【APK安全】系统管理器安全风险与防御指南
  • 有做淘宝网站的在线网络制作系统
  • 【VSCode中Java开发环境配置的三个层级之Maven篇】(Windows版)
  • 10.1 刷题心得
  • 前端-Vue工程化
  • 深圳企业网站制作中心用网站做CAN总线通信好吗
  • 中山移动网站建设报价三室一厅二卫装修效果图
  • .net商城网站开发做封面的地图网站
  • 复习一下Cpp(1)
  • 什么网站访问量公司变更地址需要多少钱
  • final字段单元测试
  • 车载Class D功放电源脚烧蚀可能原因
  • 34线城市做网站推广最新新闻事件摘抄
  • 嵌入式ARM程序高级调试技能:26. ARM Linux CPU高负载分析:系统调用过多导致的线程高负载案例
  • 无锡企业自助建站系统网站开发和游戏开发的区别
  • 外贸网站平台都有哪些平台毕业设计做网站简单吗