# WebChat **Repository Path**: sleeping071/web-chat ## Basic Information - **Project Name**: WebChat - **Description**: 网页聊天项目(微信版) - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2025-04-17 - **Last Updated**: 2026-01-03 ## Categories & Tags **Categories**: Uncategorized **Tags**: 项目 ## README 根据代码库结构和组件信息,以下为该项目的README.md文件内容: ```markdown # WebChat 一个基于WebSocket的实时聊天Web应用,使用Spring Boot构建后端服务,支持用户登录、会话管理、实时消息传输等功能。 ## 项目结构 - **Controller**:处理HTTP请求,包括用户登录注册、消息获取、会话管理等。 - **Service/ServiceImpl**:业务逻辑处理,包括用户服务、消息服务、会话服务。 - **Mapper**:数据库访问接口,使用MyBatis Plus。 - **Pojo/Model**:数据模型类,如用户、消息、会话等。 - **Pojo/Response**:响应封装类,统一返回结果格式。 - **WebSocket**:WebSocket处理类,处理连接、消息转发等。 - **Utils**:工具类,包括JWT工具、安全工具、WebSocket工具等。 - **Config**:配置类,包括拦截器配置、WebSocket配置等。 - **Comment**:通用组件,如异常处理、响应包装。 - **Component**:组件类,如在线用户管理。 - **Enum**:结果码枚举类。 - **Interceptor**:拦截器类,处理登录验证。 - **Constants**:常量类,如JWT密钥等。 ## 功能特性 - 用户登录与注册 - WebSocket实时通信 - 消息持久化存储 - 会话管理 - 好友列表管理 - 统一的响应格式与异常处理 ## 技术栈 - Spring Boot - WebSocket - MyBatis Plus - JWT - Maven - MySQL (需查看数据库脚本db.sql) - 前端:HTML/CSS/JavaScript + jQuery ## 快速开始 ### 环境准备 - JDK 1.8+ - Maven 3.0+ - MySQL 5.7+ - Node.js (前端资源构建) ### 安装依赖 ```bash mvn install ``` ### 数据库配置 请查看并导入`src/main/resources/db.sql`文件,创建相应的数据库表结构。 ### 启动项目 ```bash mvn spring-boot:run ``` 项目默认运行在`http://localhost:8080` ### 前端访问 前端页面位于`src/main/resources/static/`目录下,包括登录、注册、聊天界面等。 ## 使用说明 1. 用户登录或注册 2. 登录后进入聊天界面,可查看会话列表、发送消息 3. 支持WebSocket实时接收消息 ## 接口文档 ### 用户模块 - `POST /user/login`:用户登录 - `POST /user/register`:用户注册 - `GET /user/getUserInfo`:获取用户信息 - `GET /user/getFriendList`:获取好友列表 ### 会话模块 - `GET /session/getSessionList`:获取会话列表 - `POST /session/addSession`:新增会话 ### 消息模块 - `GET /message/getMessagesBySessionId`:获取会话消息记录 ## 贡献者 请遵循项目的提交规范,提交PR或Issue。 ## 协议 本项目采用 MIT License,请参见 LICENSE 文件。 ```