发布时间:2018-10-30
 
技术:spring mvc+mybatis+nett4+layui
 

概述

简单快捷的IM方案,快速打造在线IM,可用于公司内网、外网通讯,客服系统等,实现了socket,websocket,能和安卓、IOS应用结合使用 Java后端和js消息采用Google Protobuf传输,如需修改protobuf文件请参考当前文档 项目可以直接生成后台代码、页面及js文件,大大节省开发时间 目前实现了单聊 群聊 及机器人回复功能,项目已经结合Mysql数据库,聊天的信息会保存到数据库表中,后续会跟layim结合完成

详细

一、前言

(1)适合人群

1,JAVA服务端开发人员

2,初级人员开发人员

3,了解spring springboot + maven

3,了解小程序开发跟前端人员接口对接

(2)你需要准备什么?

1,积极主动学习

2,微信公众号开发基本流程

3,java后端几大框架掌握如(spring springboot maven mybatis,netty4)

二、前期准备工作

软件环境:eclipse

官方下载:HTTPS://www.eclipse.org/downloads/

1 ,基本需求

简单快捷的IM方案,快速打造在线IM,可用于公司内网、外网通讯,客服系统等,实现了socket,websocket,能和安卓、IOS应用结合使用

三、项目结构

项目目录结构

四、程序配置与运行

1,Java后端和js消息采用Google Protobuf传输,如需修改protobuf文件请参考当前文档

项目可以直接生成后台代码、页面及js文件,大大节省开发时间,目前实现了单聊 群聊 及机器人回复功能,项目已经结合Mysql数据库,聊天的信息会保存到数据库表中,服务需要修改端口请参考文件 spring-im-config.xml

Imserver默认端口为2000,需要的请自行修改

    <!-- imserver  port 2000    -->
<bean id="imServer" class="com.qiqiim.server.ImServer" init-method="init" destroy-method="destroy">
<property name="port" value="2000"/>
</bean>

ImWebsocketServer默认端口为2048

   <!-- imwebsocketserver  port 2048    -->
<bean id="imWebsocketServer" class="com.qiqiim.server.ImWebsocketServer" init-method="init" destroy-method="destroy">
<property name="port" value="2048"/>
</bean>

2,数据库连接账户密码修改 resources/db.properties

jdbc.url=jdbc:mysql://127.0.0.1:3306/qiqiim?allowMultiQueries=true&useUnicode=true&characterEncoding=UTF-8
jdbc.username=root
jdbc.password=123456 jdbc.initialSize=5
jdbc.maxActive=30 jdbc.minPoolSize=2
jdbc.maxIdleTime=30000
jdbc.idleConnectionTestPeriod=100

3,数据库连接成功后请执行SQL文件创建数据库及表SQL文件地址 webapp/qiqiim.sql有layim的用户,不知道layim文件怎么放,参考下图目录结构

4,java测试请执行QiQiImClient main方法

五、运行效果

1、Websocket测试 请tomcat启动项目,浏览器运行http://127.0.0.1:{端口}/{项目名} 到首页

首页

注:聊天界面都扒的京东的机器人客服界面,只是为了演示功能

2、单聊

3、群聊,需要多开浏览器

4 、机器人,请自行申请图灵机器人key

5、用户管理

6、消息管理

7、后台代码生成

8、 结合layIm实现所需要的功能,已实现PC端和手机端访问的聊天功能

9、输入账号和密码登录,内置用户账号1,2,3,4,5,6,7 一共7个,密码和账号相同,具体查看user_account 数据表

消息互通界面

注:本文著作权归作者,由demo大师发表,拒绝转载,转载需要作者授权

ssm(spring mvc+mybatis)+netty4开发qiq的更多相关文章

  1. Spring Boot 2.X(三):使用 Spring MVC + MyBatis + Thymeleaf 开发 web 应用

    前言 Spring MVC 是构建在 Servlet API 上的原生框架,并从一开始就包含在 Spring 框架中.本文主要通过简述 Spring MVC 的架构及分析,并用 Spring Boot ...

  2. ssm整合说明与模板-Spring Spring MVC Mybatis整合开发

    ssm整合说明 spring+spring mvc+mybatis 说明 源码下载 由于之前存在ssh框架,spring+struts+hibernate,其中spring负责aop与ioc,所以一般 ...

  3. SSM(Spring+Spring MVC+Mybatis)开发前台后功能完整的java开源博客管理系统

    项目描述 本项目通过SSM(SpringMVC+Mybatis+Spring)框架编写的一个人博客管理系统,使用hexo主题,以及MAVEN进行对项目管理,并且前端具有粒子和点击爱心效果.后端的页面框 ...

  4. Spring MVC 学习总结(十)——Spring+Spring MVC+MyBatis框架集成(IntelliJ IDEA SSM集成)

    与SSH(Struts/Spring/Hibernate/)一样,Spring+SpringMVC+MyBatis也有一个简称SSM,Spring实现业务对象管理,Spring MVC负责请求的转发和 ...

  5. maven/eclipse搭建ssm(spring+spring mvc+mybatis)

    maven/eclipse搭建ssm(spring+spring mvc+mybatis) 前言 本文旨在利用maven搭建ssm环境,而关于maven的具体内容,大家可以去阅读<Maven 实 ...

  6. 最详细的SSM(Spring+Spring MVC+MyBatis)项目搭建

    速览 使用Spring+Spring MVC+MyBatis搭建项目 开发工具IDEA(Ecplise步骤类似,代码完全一样) 项目类型Maven工程 数据库MySQL8.0 数据库连接池:Druid ...

  7. SSM Spring+SpringMVC+mybatis+maven+mysql环境搭建

    SSM Spring+SpringMVC+mybatis+maven环境搭建 1.首先右键点击项目区空白处,选择new->other..在弹出框中输入maven,选择Maven Project. ...

  8. SSM(Spring +SpringMVC + Mybatis)框架搭建

    SSM(Spring +SpringMVC + Mybatis)框架的搭建 最近通过学习别人博客发表的SSM搭建Demo,尝试去搭建一个简单的SSMDemo---实现的功能是对用户增删改查的操作 参考 ...

  9. SSM(Spring+SpringMVC+Mybatis)框架环境搭建(整合步骤)(一)

    1. 前言 最近在写毕设过程中,重新梳理了一遍SSM框架,特此记录一下. 附上源码:https://gitee.com/niceyoo/jeenotes-ssm 2. 概述 在写代码之前我们先了解一下 ...

随机推荐

  1. (八十七)AutoLayout的简单介绍与实例

    AutoLayout是继AutoResizing之后的一种自己主动布局方法.攻克了AutoResizing无法处理控件间相互关系的问题. AutoLayout在storyboard中通过底部工具条设置 ...

  2. oracle的!=与<>

    效果是完全一样的 Oracle中有三个不等符号的,分别是: != ^= <>

  3. 【Java】Eclipse代码格式化-代码模板

    Eclipse代码格式化-代码模板 eclipse 代码模板_百度搜索 编码规范系列(一):Eclipse Code Templates设置 - 青葱岁月 - ITeye博客 善用Eclipse的代码 ...

  4. 文本分类需要CNN?No!fastText完美解决你的需求(后篇)

    http://blog.csdn.net/weixin_36604953/article/details/78324834 想必通过前一篇的介绍,各位小主已经对word2vec以及CBOW和Skip- ...

  5. 创业公司做数据分析(四)ELK日志系统 (转)

    http://blog.csdn.net/zwgdft/article/details/53842574 作为系列文章的第四篇,本文将重点探讨数据采集层中的ELK日志系统.日志,指的是后台服务中产生的 ...

  6. Spark参数设置的方式

    可以通过以下几种方式设置: 1)bin/spark-submit 可以直接读取conf/spark-defaults.conf文件 每一行为一个key和valuespark.master        ...

  7. WordPress 获取指定分类ID的分类信息

    get_term:直接从数据库中获取分类信息get_the_category:使用post_id作为参数,先根据post_id查询对应的文章然后再返回对应的分类信息,如果没有文章信息则返回Null 之 ...

  8. 一分钟读懂互联网广告竞价策略GFP+GSP+VCG

    原文:http://ju.outofmemory.cn/entry/116780 一分钟读懂互联网广告竞价策略GFP+GSP+VCG 两个广告位,三家广告主竞价,广告平台究竟应该制定广告竞价策略呢?这 ...

  9. Python操作记录

    1.写入中文出错,需要执行 reload(sys) sys.setdefaultencoding('utf8') 2.json.dump中文写入为\xxxx ensure_ascii=False

  10. 4、Cocos2dx 3.0游戏开发找小三之Hello World 分析

    尊重开发人员的劳动成果.转载的时候请务必注明出处:http://blog.csdn.net/haomengzhu/article/details/27186557 Hello World 分析 打开新 ...