嘟嘟聊天室,IM 项目
该项目尽可能使用新的版本,也顺带熟悉新版本的差异
- Java 21:选择自己喜欢的 OpenJDK 版本即可,这里选择了亚马逊家的 Corretto
- SpringBoot 3:Web 开发框架
- MyBatis:ORM 框架,进行数据库操作
- MyBatis Plus
- 简化对数据库的操作
- 配置模板通过代码生成器生成自己需要的 Java 类,详情 MPGenerator
- Swagger 3 + Knife4j 4.X 版本:接口文档以及美化,采用最新的版本,使用 OpenAPI 3
- hutool:一个功能丰富且易用的 Java 工具库。除了提供 java 命名空间的,还有提供 Jakarta 的,便于新版本 Java(如 Java 17)使用
- ip2region:一个离线 IP 地址定位库和 IP 定位数据管理框架,10 微秒级别的查询效率
- 账号登录
- 好友模块
- 申请好友
- 删除好友
- 好友申请列表
- 同意好友申请
- 好友列表
- 用户信息获取
- 惰性获取方式,前端查不到信息时
- 用户主动点击查看信息时(比如微信查看对方头像时)
- 消息
- 多类型消息支持
- 对象存储服务(Object Storage Service,OSS)服务
- 支持 minio
- 单聊
- 群聊
- 屏蔽字
- 表情包
- 视频聊天
- 集成 AI 聊天