Skip to content
基于WebScoket协议实现的即时聊天项目。后台使用SpringMVC和Hibernate
JavaScript Java CSS
Branch: master
Clone or download
Latest commit c5283d6 Jul 19, 2019
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
WithMe 1.0 Alpha/JavaEE(Server&WebClient)/WithMe 增加.ignore Jun 28, 2018
WithMe 2.0 Alpha change name Feb 13, 2019
README.md Update README.md Jul 19, 2019

README.md

WithMe 1.0 Alpha

  这个项目是使用JavaEE开发的一个多人在线即时聊天系统。

新版本开发

因为这个版本是我几年前开发的,所以目前不做维护和更新。目前我正在使用微服务开发的模式,使用Netty作为websocket服务器,使用redis作为缓存等方式以提高聊天系统的可扩展性,并发性等各方面性能,同时也开发新的功能。欢迎大家关注以及共同开发~
WithMe3.0目前功能已经正常,并且我在进行持续开发和维护,欢迎使用WithMe3.0.
项目地址: https://github.com/IcedSoul/WithMe3.0

运行说明

 请按照以下方式来让此项目在你的电脑上运行。

1. 使用git命令行执行以下命令将项目下载到本地(需安装Git客户端)

 https://github.com/IcedSoul/WithMe
 
2. 打开WithMe/WithMe 2.0 Alpha/JavaEE(Server&Client)/WithMe,这个目录为项目的根目录(后面说的根目录都是指的这个目录)。当前目录下src/main/resources/withme.sql为建表语句。确认自己本地MySQL已经安装并且正常运行,使用navicat或者命令行在MySQL使用WithMe.sql里面语句新建对应数据库和表。

3. 修改项目根目录下src/main/resources/properties下面database.properties文件,将数据库连接地址,用户名和用户密码修改为自己使用的MySQL数据库。

4. 在命令行下进入项目根目录,执行一下命令(需要先安装Maven工具并且配置好环境变量,如未安装可以百度&Google安装方式。)

mvn clean package -DskipTests

5. 执行成功后即可在根目录下target文件夹下看到WithMe.war文件,将这个文件复制到Tomcat安装(也就是解压)目录下的webapps文件夹内,然后重启tomcat即可。(需下载并且解压Tomcat,版本最好为8.0或以上)

6. 在浏览器访问http://localhost:8080/WithMe来查看效果。

7. 测试请使用两个浏览器注册并且登录两个账号,搜索彼此添加好友来进行聊天。

运行截图

聊天

主要功能

  1.注册/登录
  2.搜索用户,查看用户信息,发送好友申请,同意好友申请
  3.单人即时聊天
  4.建立群组,邀请好友入群,查看群组成员
  5.群组聊天

采用框架及协议

  使用JavaEE框架:Spring+SpringMVC+Hibernate
  前端:Bootstrap+Layer.js插件
  通信:使用JavaEE 7.0 WebSocket协议
此处请注意:WithMe1.0 Alpha 版本所使用的 WebSocket 为 JavaEE7.0(及以上)自带的 javax.websocket 类库,WebSocket版本为JSR356,无法实现与 Android 端以及桌面端通信的功能。

说明

 因为使用的WebSocket协议只支持Web端,本项目只有web端。但是,我们会基于 WithMe 1.0 Alpha 继续开发 WithMe 2.0 Alpha 版本,在在2.0中,我们将采用新的WebSocket协议,实现web端、Android端以及桌面端的互相通信。


WithMe 2.0 Alpha

  WithMe2.0优化了WithMe1.0仅支持Web端的问题,采用了新版本的Java-WebSocket,实现了与Android端和Java桌面端的即时通信。

主要功能

  功能同WithMe1.0,添加了Android端单聊和群聊功能。

采用框架及协议

  框架和协议与WithMe1.0相同。
  WebScoket由JavaEE7.0的javax.websocket变为Java-Websocket。

You can’t perform that action at this time.