十-Mina学习之自定义协议介绍
2018-03-14 09:52
309 查看
1.自定义的编解码工厂
要实现编解码工厂就要实现ProtocolCodecFactory这个接口2.自定义的编解码器
1.实现自定义的解码器:实现ProtocolDecoder接口2.实现自定义的编码器:实现ProtocolEncoder接口
步骤:先获得工厂,再获得编解码器。
3.为什么要使用自定义的编解码器
在实际工作中不是一个字符串就可以传输所有数据,我们传输的是自定义的协议包,并且能在应用程序和网络通信中存在对象和二进制转化关系。所以我们需要编写自定义的编解码器。4.常用的自定义协议的方法
1.定长的方式:aa,bb,ok,no等这样的通信方式2.定界符: helloworld | hahaha|......|......通过特殊符号来区分消息。但是容易出现黏包、半包现象。
如:hello | worldhahaha 这样的数据应该丢弃
3.自定义的协议包:包头+包体
包头:数据包的版本号,整个数据包(包头+包体)的长度
包体:实际数据
我们通过客户端不断发送指定数目的自定义数据包,然后服务端解析,在这个过程中要解决半包问题。
相关文章推荐
- Mina学习(3):实现简单自定义协议包(报文)
- 工具之网络协议分析 Wireshark基本介绍和学习TCP三次握手
- HTTP协议学习 – HTTP HTTP协议介绍 持续连接 HTTP消息
- Mina实现自定义协议的通信
- Mina实现自定义协议的通信
- MINA学习之体系介绍
- MINA学习之体系介绍
- TCP协议学习介绍
- ns2仿真学习(六)-自定义协议
- 学习Android推送功能笔记(6)---Mina--CodecFactory自定义和一点别的扩展
- Hadoop 学习笔记五 ---Hadoop系统通信协议介绍
- salesforce 零基础学习(二十六)自定义图表chart简单介绍(使用apex和VF实现)
- mina的编码和解码以及断包的处理,发送自定义协议,仿qq聊天,发送xml或json
- 【迷你微信】基于MINA、Hibernate、Spring、Protobuf的即时聊天系统:8.自定义传输协议
- mina仿qq聊天功能,自定义协议,协议的编码和解码详解,发送xml对象json,mina开发大全,详细api,mina心跳
- Wireshark基本介绍和学习TCP三次握手协议
- java学习之HTTP协议介绍
- RTSP学习之RTSP协议流程介绍
- Mina自定义协议-实现数据交互
- linux shell学习笔记二---自定义函数(定义、返回值、变量作用域)介绍