`
shuofenglxy
  • 浏览: 195369 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

IoBuffer、IoSession

阅读更多

Iobuffer比较简单  大局可直接从http://mina.apache.org/iobuffer.html 看,深入源码可以直接读Iobuffer的源码。

IoHandler里处理所有的IO事件,业务逻辑也是从这里关联,具体看http://mina.apache.org/iohandler.html+源码就OK了,针对不同的需要来Override相应的方法就OK了。

分享到:
评论

相关推荐

    Mina2.0阅读源码笔记(很值得一看)

    - **IoBuffer vs ByteBuffer**: IoBuffer 提供了更多便于操作的功能,比如自动扩容、直接内存分配等特性,使得数据处理更为高效。 2. **IoService** - IoService 接口定义了 Mina 中用于处理网络连接的服务,它...

    Apache-Mina教程.pdf

    mina框架介绍、主要接口介绍:IoService、IoAcceptor、IoConnector、IoSession、IoSessionConfig、IoHandler、IoBuffer、IoFuture等;信息分段处理demo、多路分离编解码demo、与Spring/JMX集成示例

    mina自定义编码器-自行做会话累积

    out.write(new IoBuffer(encodedData)); // 清空队列,表示消息已发送 session.setAttribute("queuedMessages", new ArrayList()); } else { // 如果没有累积消息,直接编码当前消息 byte[] encodedData = ...

    mina自定义编码解码器

    例如,如果你有一个自定义的消息类`MyMessage`,你可以创建一个`MyMessageEncoder`,重写`encode()`方法,将`MyMessage`对象转换为`IoBuffer`。编码器的目的是确保数据在网络中传输时保持正确格式。 ```java public...

    Android长连接神器框架Mina之服务器和客户端例子

    Mina提供了一套丰富的`IoBuffer`类用于数据的读写操作,支持各种类型的数据转换,如字节、字符串、对象等。`IoBuffer`提供了一种高效的缓冲区管理方式,可以高效地进行数据存取。 ### 性能优化 1. **线程模型**:...

    mina聊天室

    当用户输入消息并发送时,客户端会创建一个包含消息内容的`IoBuffer`,并通过`IoSession`对象将其写入到网络连接。服务端接收到数据后,同样会触发读取事件,我们可以在此处理接收到的消息,并广播给其他在线用户。 ...

    mina源码走读与实例

    - **作用**:`IoBuffer`是MINA框架内部使用的`ByteBuffer`的封装,主要用于处理二进制数据的读写操作。 #### 三、创建连接各接口调用顺序 创建连接过程中涉及的主要接口调用顺序如下图所示: ![创建连接调用顺序]...

    Mina2.0框架源码剖析

    Mina使用IoBuffer作为数据缓冲区,它提供了一种高效的字节操作方式。同时,Mina还提供了Codec接口,用于数据的编码和解码。通过实现Codec接口,开发者可以自定义数据格式,实现与其他系统的通信。 五、异步I/O模型 ...

    mina-core-2.0.1.jar,apache-mina-2.0.1

    4. **Buffer**:MINA 提供了 ByteBuffer 和 IoBuffer 两种缓冲区,用于在网络通信中高效地读写数据。 **MINA 2.0.1 版本特点:** 1. **性能优化**:在 2.0.1 版本中,MINA 进行了多方面的性能提升,包括更快的数据...

    MINA TCP简单通信实例

    MINA提供了 IoBuffer 类,用于高效地存储和操作网络数据。你可以将数据写入Buffer,然后通过Session的write方法发送出去;接收数据时,MINA会自动将接收到的数据填充到Buffer中,供你读取。 在“MINA TCP简单通信...

    Mina2.0完全剖析,完全自学手册

    **`IoBuffer` 常用方法**:`IoBuffer`是Mina中用来处理二进制数据的重要类,提供了一系列方法来操作缓冲区中的数据,如`allocate`、`flip`、`rewind`等。 **示例**:下面的示例演示了如何根据文本换行符来进行编...

    java 之异步套接字编程实例(AIO)

    import java.io.IOException; import java.nio.ByteBuffer; import java.nio.channels.AsynchronousSocketChannel; import java.nio.channels.CompletionHandler; public class ReadWriteHandler extends Thread { ...

    mina简单示例

    数据通常以IoBuffer的形式在Mina中传递。 ```java public class MyHandler extends IoHandlerAdapter { @Override public void messageReceived(IoSession session, Object message) { // 处理接收到的数据 } ...

    Apache_Mina2.0学习笔记

    1. **下载使用的Jar包**:在开始使用Mina之前,你需要从Apache官方网站下载最新版本的Mina2.0库,它包含了所有必要的jar文件,包括核心库、依赖的IoBuffer和Netty组件等。 2. **工程创建配置**:创建Java项目后,将...

    springboot整合mina

    public Object decode(IoBuffer in) throws Exception { int length = in.getInt(); if (in.getRemaining() ) { // 没有足够的数据,等待更多数据到达 return null; } byte[] data = new byte[length]; in....

    Mina 使用DEMO

    5. **数据传输**:数据的读写操作通过IoBuffer对象进行,它提供了一种高效、灵活的数据缓冲机制。 ### 3. MinaStudy 示例分析 在"MinaStudy"这个DEMO中,我们可以看到以下关键部分: - **初始化服务端**:创建一...

    mina程序执行过程

    - **Decoder**:接收到 `IoBuffer`(字节缓冲区)后,Decoder 会按照预定义的格式(例如报文结构)读取数据,然后根据功能代码解析出具体的业务信息。在解析过程中,可能需要利用框架(如 XStream)将 XML 字符串...

    HPsocket 封包与mina对接

    protected boolean doDecode(IoSession session, IoBuffer in, ProtocolDecoderOutput out) throws Exception { // 在此处解析数据包 return false; } } ``` ### 总结 本篇主要介绍了如何使用HPsocket中的`...

    Mina_in_real_life_ASEU-2009.pdf

    session.write(((IoBuffer) message).duplicate()); // 将接收到的数据写回客户端 } } ``` ##### 2. 添加日志过滤器 为了记录客户端请求和响应,可以在代码中添加日志过滤器。 ```java public static void main...

    mina 框架demo

    import java.io.IOException; import java.net.InetSocketAddress; import java.nio.charset.Charset; import org.apache.mina.core.service.IoAcceptor; import org.apache.mina.core.session.IdleStatus; import ...

Global site tag (gtag.js) - Google Analytics