前言
之前在做技术积累的时候基于Layim+t-io做了一个即时通讯,由于某种原因,就搁置了,最近抽空将其完善,此系列记录开发过程。
关于t-io
在开始之前建议对于t-io不熟悉的可以去官网看看t-io 网络上对于t-io的解析的文章很多,可以看看,t-io的源码地址
开发环境
操作系统:Windows 10 X64
开发工具:IntelliJ IDEA ULTIMATE 2018.3
JDK:1.8.0_131
t-io:3.5.7.v20191115-RELEASE
数据库:MySQL5.7
服务端搭建
在服务搭建之前建议先去网络上对以下几个类进行了解
IWsMsgHandler(websocket事件监听器)
ServerAioHandler(消息的处理)
WsServerAioListener(事件监听)
WsServerConfig(服务端的配置)
ServerTioConfig(当前的上下文)
TioServer(Tio服务)
本篇文章不会对于t-io进行过多的分析,尽量减少文字的描述,大部分使用代码进行呈现,需要详细的了解t-io的话可以去它的官网进行了解
详细代码
引入t-io的包
1
2
3
4
5
6
7
8
9
10
11<dependency>
<groupId>org.t-io</groupId>
<artifactId>tio-core</artifactId>
<version>3.5.7.v20191115-RELEASE</version>
</dependency>
<dependency>
<groupId>org.t-io</groupId>
<artifactId>tio-websocket-server</artifactId>
<version>3.5.7.v20191115-RELEASE</version>
</dependency>
ServerSocketStarter.java
1 | /** |
WesServerConfig.java
继承org.tio.websocket.server.WsServerConfig
1 | public class WesServerConfig extends WsServerConfig { |
WsStarter.java
源码地址:org.tio.websocket.server.WsServerStarter
1 | /** |
WesMsgHandler.java
实现:org.tio.websocket.server.handler.IWsMsgHandler
1 |
|
WesServerAioHandler.java
实现:org.tio.core.intf.AioHandler.ServerAioHandler
1 | /** |
WesServerAioListener.java
继承:org.tio.websocket.server.WsServerAioListener
1 | /** |
WebSocketProperties.java(端口和网址的配置)
1 |
|
说明
WebSocketProperties类的配置一些配置是在application.yml文件中定义的
1 | websocket: |
结束
启动项目后出现如下图内容,证明服务端配置成功
由于部分内容待完善,源码暂时无法提供,等功能完善后会提供源码。
此篇内容仅仅只是记录自己在完成该功能的时候的一些过程,以及自己的思路。其中也遇到一些问题,通过网上查找了相关一些资料,如有不对的地方或者待完善的地方,请多多指教。