JavaDog Chat v1.0.0

基于SpringBoot+uniapp简单通讯聊天软件

项目介绍

JavaDog Chat 简单通讯聊天软件是基于SpringBoot+MybatisPlus+uniapp+uview+stomp等更多优秀组件及前沿技术开发,注释丰富,代码简洁,开箱即用,兼容H5+小程序+APP,及其适合入门学习!将想说却不敢说,相爱去不敢爱的思绪放置与此。







快速链接

微信公众号:JavaDog程序狗

关注公众号,发送 chat ,无任何套路即可获得



或访问https://blog.javadog.net/archives/chat

体验地址

因二维码图被和谐,最好访问https://blog.javadog.net/archives/chat进行扫码访问体验

1.网页H5

http://chat.javadog.net

2.APP

https://www.pgyer.com/javadog-chat

体验账号

账号:18306390693

密码:123456

如需多个账户可自行注册

主要模块功能

️登录注册

  1. 用户可自主注册,并通过用户名密码进行登录
  2. 如忘记密码则可通过邮箱找回密码,但需要在配置文件中配置邮箱相关内容

消息

  1. 展示群组及好友聊天信息,并有消息提醒及未读标记
  2. 可通过上方放大镜进行搜索,或者扫一扫进行好友添加
  3. 点击查看聊天信息,可进行文字/图片/视频/语音等发送方式



‍‍好友

  1. 按照字母索引展示所有好友列表,并可通过放大镜搜索
  2. 通过右上角扫描二维码进行好友添加
  3. "我添加的"本人通过扫码或者搜索添加好友申请列表数据
  4. "添加我的"其他用户通过扫码或者搜索添加我本人申请列表数据
  5. 通过点击好友进行好有名片查看



群组

  1. 按照字母索引展示所有群组列表,并可通过放大镜搜索
  2. 通过右上角扫描二维码进行群组加入
  3. "新建群组"可根据所需进行群组的创建
  4. 通过点击群组进行好有名片查看

我的

  1. 点击头像进行头像修改
  2. "我的名片"展示本人所属二维码
  3. "修改密码"可进行密码重置
  4. "关于"展示本狗的博客是个webview跳转
  5. 点击退出并退出当前账号

️快速启动

后端chat-provider推荐IDEA打开,前端chat-uniapp推荐HbuliderX打开。

前端支撑

插件 版本 用途
uview-ui ^2.0.31 多平台快速开发的UI框架
uni-simple-router ^2.0.7 专为uniapp打造的路由器
moment ^2.29.4 js工具库
mescroll-uni ^1.3.7 上拉加载下拉刷新插件
@uni-ui/code-ui ^1.4.8 二维码生成工具

启动前端

  1. 在chat-uniapp项目目录下执行
    npm install
  2. 在HBuilderX工具下运行,选择需要运行到哪个终端

    3. 如需调整环境,请在/common/config/env.js修改环境变量

后端支撑

插件 版本 用途
jdk 1.8 java环境
lombok 1.18.16 代码简化插件
maven 3.6.3 包管理工具
druid 1.1.24 JDBC组件
hutool 5.7.20 Java工具类库
mybatis-plus 3.4.1 基于 MyBatis 增强工具
pinyin4j 2.5.1 拼音组件库
mysql 8.0 / 5.7 数据库

启动后端

  1. 开发工具内配置好,并将maven配置好,建议使用阿里云镜像
  2. 将chat-provider包下的/doc/SQL/db_chat.sql进行本地执行,并在application配置文件中修改数据库配置

  3. 运行启动SpringBoot项目,如见到以下日志即为启动成功。

其他辅助

️‍♀️原型图

本狗第一次画原型,请大佬勿喷

项目路径下/doc/原型/chat.rp

DB设计

项目路径下/doc/数据库设计/chat.pdm

版权说明

  • JavaDog Chat 采用 Apache License2.0协议

  • 代码可用于个人学习等,完全开源免费

  • 二次开发如用于毕设等二次售卖,未经审核视为侵权

JavaDog 狗屋地址
个人博客 https://blog.javadog.net
公众号 https://mp.weixin.qq.com/s/_vgnXoQ8FSobD3OfRAf5gw
CSDN https://blog.csdn.net/baidu_25986059
掘金 https://juejin.cn/user/2172290706716775
知乎 https://www.zhihu.com/people/JavaDog
简书 https://www.jianshu.com/u/1ff9c6bdb916
gitee https://gitee.com/javadog-net
GitHub https://github.com/javadog-net

【实战】SpringBoot+uniapp+uview打造H5+小程序+APP入门学习的聊天小项目的更多相关文章

  1. 微信小程序开发入门学习(1):石头剪刀布小游戏

    从今天起开始捣鼓小程序了2018-12-17   10:02:15 跟着教程做了第一个入门实例有兴趣的朋友可以看看: 猜拳游戏布局 程序达到的效果 猜拳游戏的布局是纵向显示了三个组件:文本组件(tex ...

  2. 微信小程序开发入门学习(2):小程序的布局

    概述 小程序的布局采用了和Css3中相同的 flex(弹性布局)方式,使用方法也类似(只是属性名不同而已). 水平排列 默认是从左向右水平依次放置组件,从上到下依次放置组件. 任何可视组件都需要使用样 ...

  3. 基于uniapp自定义Navbar+Tabbar组件「兼容H5+小程序+App端Nvue」

    uni-app跨端自定义navbar+tabbar组件|沉浸式导航条|仿咸鱼凸起标签栏 在跨端项目开发中,uniapp是个不错的框架.采用vue.js和小程序语法结构,使得入门开发更容易.拥有非常丰富 ...

  4. uniapp之uni-starter小程序多端研发框架搭建与项目实践

    随着移动互联网的飞速发展,无数移动APP琳琅满目:在移动App的发展的基础上,衍生了小程序.轻应用技术,它随时可用,但又无需安装卸载.小程序是一种不需要下载安装即可使用的应用,它实现了应用" ...

  5. 开发H5程序或者小程序的时候,后端Web API项目在IISExpress调试中使用IP地址,便于开发调试

    在我们开发开发H5程序或者小程序的时候,有时候需要基于内置浏览器或者微信开发者工具进行测试,这个时候可以采用默认的localhost进行访问后端接口,一般来说没什么问题,如果我们需要通过USB基座方式 ...

  6. 原创:从零开始,微信小程序新手入门宝典《一》

    为了方便大家了解并入门微信小程序,我将一些可能会需要的知识,列在这里,让大家方便的从零开始学习:一:微信小程序的特点张小龙:张小龙全面阐述小程序,推荐通读此文: 小程序是一种不需要下载.安装即可使用的 ...

  7. 微信小程序室内地图导航开发-微信小程序JS加载esmap地图

    一.在微信小程序里显示室内三维地图 需要满足的两个条件 调用ESMap室内地图需要用到小程序web-view组件,想要通过 web-view 调用ESMap室内地图需要满足以下 2 个条件: 1. 小 ...

  8. Java生鲜电商平台-优惠券功能设计与开发(小程序/APP)

    Java生鲜电商平台-优惠券功能设计与开发(小程序/APP) 说明:Java生鲜电商平台-优惠券功能设计与开发(小程序/APP) 目录 1.项目背景与需求分析 2.需求目的与功能点列表 3.业务逻辑 ...

  9. 支付宝小程序室内地图导航开发-支付宝小程序JS加载esmap地图

    如果是微信小程序开发,请参考微信小程序室内地图导航开发-微信小程序JS加载esmap地图文章 一.在支付宝小程序里显示室内三维地图 需要满足的两个条件 调用ESMap室内地图需要用到小程序web-vi ...

  10. Java生鲜电商平台-关于学习生鲜电商平台的思考(小程序/APP)

    Java生鲜电商平台-关于学习生鲜电商平台的思考(小程序/APP) 说明:最近群里面的一个网友问的一个问题,让我陷入了深思,他问的问题很基础也很真实,"大佬,你们是怎么学习的呢?" ...

随机推荐

  1. sequelize关联相关表

    在article的迁移文件: 在commemt里面添加: 在单条查询里面 这样一个文章里面包含一个评论

  2. Kafka相关问题

    Kafka有哪几个部分组成 生产者.消费者.topic.group.partition kafka的group1)定义:即消费者组是 Kafka 提供的可扩展且具有容错性的消费者机制.在Kafka中, ...

  3. Jetpack Compose 加载 Drawable

    Drawable Painter A library which provides a way to use Android drawables as Jetpack Compose Painters ...

  4. 【loguru】Python简单的日志管理模块

    简介 在部署一些定时运行或者长期运行的任务时,为了留存一些导致程序出现异常或错误的信息,通常会才用日志的方式来进行记录这些信息. 在 Python 中用到日志记录,那就不可避免地会用到内置的 logg ...

  5. ICMP-ping报错类型

    ICMP数据包的包头,两个重要字段Type和Code,如图所示 ICMP消息类型和编码类型 回显请求包,正常为80 回显回复包,正常为00 其余均为报错类型. 超时:对方主机不在线.屏蔽等 传输失败: ...

  6. C++ 函数参数与按值传递

    C++ 函数参数与按值传递 C++ 通常安值传递参数,这意味着将数值参数传递给函数,而后者将其赋给一个新的变量. double volume = cube(side); 其中,side 是一个变量. ...

  7. 第14章 身份验证:使用Identity将用户添加到应用程序(ASP.NET Core in Action, 2nd Edition)

    本章包括 ASP.NET Core中web应用程序的身份验证工作原理 使用ASP.NET Core标识系统创建项目 向现有web应用添加用户功能 自定义默认ASP.NET Core标识UI 像ASPN ...

  8. 三,打包electron

    1,在当前项目下运行 npm install --save-dev @electron-forge/cli npx electron-forge import 此时package.json内容如下: ...

  9. ④ 版本② axios 封装

    HttpRequestBase 类 1 构造函数 constructor(baseUrl) { const basePort = getUrlPort(baseUrl); this.baseUrl = ...

  10. android 下载安装包更新app

    1下载 public void download(String url) { Utils.Loge("download",url); Uri uri = Uri.parse(url ...