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. SpringBoot怎么管理封装java包的关系

    首先SpringBoot直接写注解加依赖就可以了,基本上不用写xml,非常方便,在这里我只写了两个核心包 为什么选择jar类型? SpringBoot基本上是个应用程序了,只要用java命令程序去运行 ...

  2. howork7

    " 形式化方法   阅读了解形式化方法形式化方法|形式化方法对软件开发的挑战:历史与发展 根据表达能力,形式化方法可以分为五类: 1)基于模型的方法:通过明确定义状态和操作来建立一个系统模型 ...

  3. 时间格式转换成指定格式(Vue)

    1 /** 2 * Parse the time to string 3 * @param {(Object|string|number)} time 4 * @param {string} cFor ...

  4. 高并发解决方案之 mysql悲观锁:select ... for update

    select ... for update 场景:多个进程都先读后写咋办,需要的是让他们串行执行. 比如库存的减少.一般这些操作都是很长一串并且是开启事务的.如果库存刚开始读的时候是1,而立马另一个进 ...

  5. JMeter MD5加密 默认小写 转换为大写

    出处:https://www.cnblogs.com/scholars-xian/p/11718854.html 使用内置函数加密 1)使用 ${__MD5(123,)} 进行MD5加密(32位小写) ...

  6. 宝塔linux面板进行数据库操作显示"数据库管理密码"

    在使用宝塔linux面板时,对数据库进行操作之后,显示数据库管理密码错误.经历了卸载数据库并删除了数据库文件和olddata, 在从新安装,仍然显示数据库管理密码错误. 这时,我们可以进入到 /www ...

  7. appium之元素定位方法

    做App UI自动化的时候,appium使用最频繁的应该就是定位元素了. Appium常用的元素属性值: resource-id:resource-id属性一般ID是唯一的,如果元素中有ID的话,优先 ...

  8. 华大单片机HC32L13X软件设计时候要注意的事项

    1.系统启动时默认设置主频为内部4MHz; 2.调试超低功耗程序或者把SWD端口复用为GPIO功能都会把芯片的SWD功能关掉,仿真器将会与芯片失去连接,建议在main函数开始后加上1到2秒的延时,仿真 ...

  9. 01-第一个Spring程序

    1.导包 所有和spring有关的包(有mybatis包的忽略),后期会使用maven引入 2. 引入spring的配置文件 可命名为applicationContext-service.xml或sp ...

  10. hydra暴力破解各种服务

    hydra 在爆破工具中,hydra可是数一数二的存在,是著名黑客组织thc开发的一款开源的暴力密码破解工具,可以在线破解多种密码 参数 作用 -l 指定用户名 -p 指定密码 -L 指定用户字典 - ...