Mina通信框架应用6
来源:互联网 发布:澳洲什么值得买 知乎 编辑:程序博客网 时间:2024/05/22 01:55
使用Mina开发通信应用程序的过程简化为只是实现一个IoHandlerAdapter子类,响应其中的通信事件而己;实现IoHandlerAdapter时,使用了一个关键类是IoSession对象,IoSession可以理解为类似于Socket对象的连结对象,在Mina体系中,它代表了客户机与服务器的连结,IoSession对象有一个getId()的方法,得到每个连结的唯一ID用以标识连结的唯一性。
NioSocketAcceptor: 这是创建非阻塞服务器端的类,类似与java中的ServerSocket,非阻塞I/O,是java5里提供的一组新的API,意思是我们的服务器不用像以前那样调用accept()方法,阻塞等待了。
NioSocketConnector:功能似于jdk中的Socket类,当然,也是非阻塞的读取数据!
DefaultIoFilterChainBuilder:对接收到的数据进行过滤的创建器,用以设定通信时的协议,在本例中,程序规则是一行数据就是一条消息,通过:
//设定这个过滤器将一行一行(/r/n)的读取数据
chain.addLast("myChin", new ProtocolCodecFilter(new TextLineCodecFactory()));
来设定
IoHandlerAdapter:这是一个抽像类,专门用来让我们重写以处理程序接收到的消息的,并处理通信中的连结,断开,消息到达等事件。客户机和服务器端创建后,都有一个setHandler方法,就是要传入我们重写了这个类的对象。
其中各个方法在通信中会根据情况自动调用,类似与Swing事件中的调用机制。
IoHandlerAdapter实现类中最重要的一个方法是:
//当客户端发送的消息到达时:
@Override
public void messageReceived(IoSession session, Object message)
这个方法传进来两个参数,第一个,代表了与对方机器的Tcp/IP连结,第二个,代表了接收到的数据,为什么定义为Object型?为了你灵活使用啊,怎个灵活法?看我们后面的Demo!
- Mina通信框架应用6
- Mina通信框架应用1
- Mina通信框架应用2
- Mina通信框架应用3
- Mina通信框架应用4
- Mina通信框架应用5
- Apache Mina通信框架架构与应用
- 网络通信应用框架apache mina(一)
- MINA网络通信框架
- apache MINA 高效通信框架
- mina作为socket通信框架
- Mina通信框架学习初步
- Apache MINA网络通信框架
- Mina应用框架编程套路
- NIO框架之MINA源码解析(三):底层通信与责任链模式应用
- NIO框架之MINA源码解析(三):底层通信与责任链模式应用
- [一]Mina入门实例-Mina网络通信框架
- MINA框架编写一个通信系统
- Mina通信框架应用5
- 打造绚丽的Swing slider
- 左右list javascript简单实现
- 利用c#制作托盘程序,并禁止多个应用实例运行
- Toast实现setView布局
- Mina通信框架应用6
- MD5对于黑客来说小菜一碟(分享几个国外免费MD5解密的网站)
- java Runtime基础
- 【转】java中的switch的参数类型
- JPA 应用技巧 1:实体类和实体 DAO 模板
- Matlab显示图片的Edge
- 内存分析
- uva oj 10361
- 使用MDX编写同比和环比