基于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);
    }
}
相关推荐
崎岖Qiu20 分钟前
【JVM篇13】:兼顾吞吐量和低停顿的G1垃圾回收器
java·jvm·后端·面试
一只叫煤球的猫3 小时前
被架构师怼了三次,小明终于懂了接口幂等设计
后端·spring·性能优化
鹦鹉0074 小时前
IO流中的字节流
java·开发语言·后端
AntBlack5 小时前
闲谈 :AI 生成视频哪家强 ,掘友们有没有推荐的工具?
前端·后端·aigc
花菜会噎住6 小时前
Vue3核心语法进阶(computed与监听)
前端·javascript·vue.js
I'mxx6 小时前
【vue(2)插槽】
javascript·vue.js
Livingbody6 小时前
使用gradio构建一个大模型多轮对话WEB应用
后端
花菜会噎住6 小时前
Vue3核心语法基础
前端·javascript·vue.js·前端框架
喜欢敲代码的程序员7 小时前
SpringBoot+Mybatis+MySQL+Vue+ElementUI前后端分离版:日志管理(四)集成Spring Security
spring boot·mysql·spring·vue·mybatis
Resean02237 小时前
SpringMVC 6+源码分析(二)DispatcherServlet实例化流程 1
java·spring boot·spring·servlet·springmvc