基于springboot,vue在线聊天系统

开发工具:IDEA

服务器:Tomcat9.0, jdk1.8

项目构建:maven

数据库:mysql5.7

系统分前后台,项目采用前后端分离

前端技术:TypeScript+Vue3.0+ElementUI-Plus

服务端技术:springboot+mybatis+redis

项目功能:

登录、注册、添加好友,创建群聊、单聊群聊、发送表情、发送图片、发送视频、上传文件、下载文件、查看好友群聊信息、删除会话、邀请加入群聊、管理个人信息、管理群聊信息、注销用户等等功能。

文档截图:

N-136基于springboot,vue在线聊天系统

java 复制代码
@RestController("WebGroupController")
@RequestMapping("/web/group")
public class GroupController {

    @Resource
    private IGroupService groupService;

    /**
     * 创建群聊操作
     * @param groupDTO
     * @return
     */
    @PostMapping("/create")
    public ResponseDTO<Boolean> createGroup(@RequestBody GroupDTO groupDTO) {
        return groupService.createGroup(groupDTO);
    }

    /**
     * 发起群聊会话操作
     * @param groupDTO
     * @return
     */
    @PostMapping("/start")
    public ResponseDTO<ChatDTO> startGroupChat(@RequestBody GroupDTO groupDTO) {
        return groupService.startGroupChat(groupDTO);
    }

    /**
     * 获取当前登录用户的群聊列表
     * @param groupDTO
     * @return
     */
    @PostMapping("/list")
    public ResponseDTO<List<GroupDTO>> listGroupByToken(@RequestBody GroupDTO groupDTO) {
        return groupService.listGroupByToken(groupDTO);
    }

    /**
     * 根据id获取群聊信息
     * @param groupDTO
     * @return
     */
    @PostMapping("/get")
    public ResponseDTO<GroupDTO> getGroupById(@RequestBody GroupDTO groupDTO) {
        return groupService.getGroupById(groupDTO);
    }

    /**
     * 邀请用户加入群聊
     * @param groupDTO
     * @return
     */
    @PostMapping("/invite")
    public ResponseDTO<GroupDTO> inviteGroupUser(@RequestBody GroupDTO groupDTO) {
        return groupService.inviteGroupUser(groupDTO);
    }

    /**
     * 退出或解散群聊操作
     * @param groupDTO
     * @return
     */
    @PostMapping("/exit")
    public ResponseDTO<GroupDTO> exitGroup(@RequestBody GroupDTO groupDTO) {
        return groupService.exitGroup(groupDTO);
    }

    /**
     * 更新群聊信息操作
     * @param groupDTO
     * @return
     */
    @PostMapping("/save")
    public ResponseDTO<GroupDTO> saveGroup(@RequestBody GroupDTO groupDTO) {
        return groupService.save(groupDTO);
    }
}
相关推荐
z人间防沉迷k2 小时前
后端开发概念
java·后端
caihuayuan52 小时前
Vue3响应式数据: 深入分析Ref与Reactive
java·大数据·spring boot·后端·课程设计
Quke陆吾3 小时前
Vue框架1(vue搭建方式1,vue指令,vue实例生命周期)
前端·javascript·vue.js
苹果酱05673 小时前
Java设计模式:探索编程背后的哲学
java·vue.js·spring boot·mysql·课程设计
Oscar_02083 小时前
uniapp+ts 多环境编译
前端·vue.js·typescript·uni-app
EndingCoder4 小时前
从零基础到最佳实践:Vue.js 系列(9/10):《单元测试与端到端测试》
前端·javascript·vue.js·性能优化·单元测试·vue3
How_doyou_do4 小时前
Vue-创建应用/挂载应用/根组件模版-.vue单文件/应用配置
前端·javascript·vue.js
王者鳜錸4 小时前
Vue3集成Element Plus完整指南:从安装到主题定制下-实现后台管理系统框架搭建
前端·javascript·vue.js
ALex_zry4 小时前
Go核心特性与并发编程
开发语言·后端·golang
Kookoos5 小时前
ABP VNext + Orleans:Actor 模型下的分布式状态管理最佳实践
分布式·后端·c#·.net·.netcore·abp vnext