# lim **Repository Path**: libaogang/lim ## Basic Information - **Project Name**: lim - **Description**: 基于 Spring Boot + Netty + Vue 3 的实时聊天应用,包含一个web端聊天应用和websocket集群框架。本项目100%由Ai开发,用于验证websocket集群框架封装思路,不管聊天应用的功能和bug。 - **Primary Language**: Java - **License**: MIT - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2026-05-25 - **Last Updated**: 2026-07-18 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # lim - 基于 Spring Boot + Netty + Vue 3 的实时聊天应用,包含一个web端聊天应用和websocket集群框架 - 本项目100%由Ai开发,用于验证websocket集群框架封装思路,不管聊天应用的功能和bug ## 技术栈 ### 后端 (lim-server) | 技术 | 版本 | 说明 | |------|------|------| | Spring Boot | 3.2.3 | 基础框架 | | Netty | 4.1.107.Final | 网络通信框架,实现 WebSocket 服务 | | MyBatis-Plus | 3.5.5 | ORM 框架 | | MySQL | 8.x | 数据存储 | | Redis | 7.x | 缓存、会话管理 | | JWT | 0.12.5 | 身份认证 | | Spring Security Crypto | - | 密码加密 (BCrypt) | | Java | 17 | 开发语言 | ### 前端 (lim-web) | 技术 | 版本 | 说明 | |------|------|------| | Vue | 3.4.21 | 前端框架 | | Vite | 5.1.6 | 构建工具 | | Element Plus | 2.5.6 | UI 组件库 | | Pinia | 2.1.7 | 状态管理 | | Vue Router | 4.3.0 | 路由管理 | | Axios | 1.6.7 | HTTP 客户端 | | Sass | 1.98.0 | CSS 预处理器 | ## 项目结构 ``` lim/ # 父工程 (Maven) ├── pom.xml # 父 POM,统一管理依赖版本 ├── lim-server/ # 后端服务模块 │ ├── pom.xml │ ├── src/ │ │ └── main/ │ │ ├── java/com/lim/ │ │ │ ├── config/ # 配置类 │ │ │ ├── controller/ # 控制器 │ │ │ ├── service/ # 业务逻辑 │ │ │ ├── mapper/ # 数据访问层 │ │ │ ├── entity/ # 实体类 │ │ │ ├── dto/ # 数据传输对象 │ │ │ ├── netty/ # Netty WebSocket 实现 │ │ │ ├── common/ # 通用工具类 │ │ │ └── ChChatServerApplication.java │ │ └── resources/ │ │ ├── mapper/ # MyBatis XML │ │ └── application.yml │ └── target/ ├── lim-web/ # 前端项目 │ ├── src/ │ │ ├── api/ # API 接口 │ │ ├── assets/ # 静态资源 │ │ ├── components/ # 公共组件 │ │ ├── router/ # 路由配置 │ │ ├── stores/ # Pinia 状态管理 │ │ ├── views/ # 页面视图 │ │ ├── App.vue │ │ └── main.js │ ├── package.json │ └── vite.config.js ├── sql/ # 数据库脚本 └── doc/ # 项目文档 ``` ## 快速开始 ### 环境要求 - JDK 17+ - Maven 3.6+ - MySQL 8.0+ - Redis 7.0+ - Node.js 18+ - pnpm 8+ (推荐) ### 1. 克隆项目 ```bash git clone cd lim ``` ### 2. 初始化数据库 sql/init.sql 修改application.yml中的数据库配置 ### 3. 启动后端服务 ```bash # 编译父工程及所有子模块 mvn clean install # 方式一:直接运行 cd lim-server mvn spring-boot:run # 方式二:打包后运行 cd lim-server mvn clean package -DskipTests java -jar target/lim-server-1.0.0.jar ``` 后端服务默认运行在 `http://localhost:8080`,WebSocket 端口为 `8081`。 ### 4. 启动前端项目 ```bash cd lim-web # 安装依赖 pnpm install # 开发模式启动 pnpm dev ``` 前端服务默认运行在 `http://localhost:5173`。