创建java项目,导入mina包。mina下载地址:http://mina.apache.org/
不会用mina的请各种百度谷歌吧。。
新建MainServer.java类,继承于Thread并实现main函数。
然后就在MainServer类里搭建main结构啦。
类如下:
从上述代码中可见,需要建立一个编解码工厂和一个实现IOHandler接口的实例啦,因为IOHandler接口是负责处理所有业务逻辑的啦。
所谓编解码工厂,就是一个负责在发送数据的最后阶段和接收数据的最开始阶段处理所发送和接收的数据。
比如:服务端发送一段数据是:“数据长度(4字节)+实际数据”,那么接收到数据后就会首先读取4个字节的长度信息验证后面的实际数据有木有这么多。完了再从IoBuffer里解析出来写入ProtocolDecoderOutput里。发送数据也是类似,在session.write("...");发送数据后,会进入ProtocolEncoder实例里对数据经行封装。比如说加密,加压等操作。
java代码:
编码类:
解码类:
2.编码完成后,数据就会交给IOHandler来处理啦,这里可以选择继承IoHandlerAdapter类来写。。
IOHandler接口的几个重要方法介绍:
sessionCreated:一个连接被创建时触发;
sessionOpened:一个连接被打开时触发;
sessionClosed:一个连接被关闭时触发;
exceptionCaught:连接出现异常未被捕获时触发;
messageReceived:连接收到消息时触发。
好了,接下来实现自己的Handler实例:
好了,目前这个没有连接数据库的mina服务端就算是勉强搭建好了,运行一下试试??
和你的客户端勾兑一下,看看有木有勾搭上~~ 哈哈~~
本人新手,也不太熟悉java服务端。。
如果有什么问题,么见怪哈。大家一起探讨,一起研究,一起进步。~~