`
flashing
  • 浏览: 355139 次
  • 性别: Icon_minigender_1
  • 来自: 大连
社区版块
存档分类
最新评论

Mina的decode和Handler之间必须注意的地方

阅读更多
mina的codec包括三个类,ProtocolCodecFactory,Encoder和Decoder。
对于Decoder来说,如果你经常需要在decode和Handler接收对象这两个方法之间共享数据,最好的办法就是向IoSession里面放如一个key-value的方式存储,就像http的session一样。
但是这里务必要注意,在连续收到数据的时候,mina并不是decode返回true之后直接调用handler的messageRecieve,而是可能是连续多次调用decode获得解码后的对象,然后再依次把这几个对象传入给hanlder的messageRecieve。
所以,必须要注意的是共享数据的生命周期如果是在decode和messageRecieve之间,那么一定要改掉,否则会冲突!
分享到:
评论

相关推荐

    mina的高级使用,mina文件图片传送,mina发送文件,mina报文处理,mina发送xml和json

    在本文中,我们将深入探讨Mina的高级使用,特别是在文件图片传送、文件发送、XML和JSON报文处理方面的实践。 1. **Mina的高级使用** Mina的核心在于其异步事件驱动的模型,这使得它在处理大量并发连接时表现出色。...

    Mina框架入门介绍

    IoSession代表了服务器和客户端之间的特定连接,包含了客户端的地址和端口信息,以及服务器的地址和端口信息。每个IoSession都是独立的,允许服务器区分不同客户端的请求并维护状态信息。开发者可以通过IoSession...

    mina demo mina jar包

    开发者可以通过这个示例学习如何配置Mina,如何编写Handler,以及如何启动和运行服务。 在学习和使用Mina时,重要的是理解其核心概念,如Filter Chain、Protocol Buffers和Transport Layer。Filter Chain允许开发者...

    mina2技术知识

    1. **IoSession**:IoSession 是 MINA 中的核心接口,它代表了客户端和服务器之间的一个连接。通过 IoSession,开发者可以发送和接收数据,管理会话状态,并且进行读写操作。 2. **FilterChain**:MINA 使用过滤器...

    mina自定义编解码器详解

    mina是一个Java开发的网络通信框架,广泛应用于TCP和UDP协议的服务器和客户端开发。在mina框架中,编解码器(Codec)扮演着至关重要的角色,它负责将应用层的数据转换为网络传输的字节流,以及将接收到的字节流还原...

    mina2+spring结合实例

    Mina2的核心概念包括Session、Filter和ProtocolHandler,这些组件共同协作,实现网络通信的全过程。 二、Spring框架概述 Spring是一个全方位的Java企业级应用开发框架,它涵盖了AOP(面向切面编程)、DI(依赖注入...

    apache-mina-2.0.4.rar_apache mina_mina

    Apache Mina是一个高性能、异步事件驱动的网络应用程序框架,用于快速开发可维护的高性能协议服务器和客户端。这个"apache-mina-2.0.4.rar"压缩包包含的是Apache Mina 2.0.4版本的源代码,是深入理解和定制Mina的...

    mina客户端简单代码示例

    2. **创建IoSession**:IoSession是Mina的核心概念,代表了客户端和服务器之间的会话。客户端需要初始化一个IoConnector来建立连接,并通过connect()方法创建IoSession。 3. **定义ProtocolCodecFilter**:为了进行...

    Mina实现长连接和短连接实例

    Apache Mina是一个流行的Java框架,专门用于简化和优化网络应用开发,它支持多种协议如TCP/IP、UDP/IP等,并提供了长连接和短连接的支持。在这个实例中,我们将探讨如何使用Mina实现长连接和短连接。 首先,理解长...

    mina连接 mina心跳连接 mina断线重连

    在Mina中,连接是指客户端与服务端之间建立的通信链路。它支持多种传输协议,如TCP/IP(Socket)、UDP(Datagram)等。Mina提供了一种事件驱动的模型,通过IoSession接口来管理连接,包括读写数据、添加监听器、关闭...

    Mina+Socket通信

    Mina和Socket是两种常见的网络通信框架和技术,它们在Java编程环境中被广泛使用。本篇文章将深入探讨如何使用Mina与Socket实现通信,并提供客户端和服务端的实现代码概述。 Mina(全称“MINA: Minimalistic ...

    mina网络通信实例

    MINA的基本架构由四个主要组件组成:Filter、Session、Handler和ProtocolCodec。Filter是MINA中的核心概念,它类似于Servlet中的Filter,可以对数据进行过滤、转换等操作。Session代表了网络连接,保存了连接状态和...

    MinaClient

    尽管Android原生并不支持Mina,但通过巧妙的设计和编码,开发者可以将Mina的核心功能移植到Android上,用于构建与服务器之间的通信。这在需要进行复杂网络操作或跨平台通信的应用中非常有价值,比如物联网设备的远程...

    3本mina教程和mina帮助文档

    Apache Mina是一个开源项目,它提供了一个高度可扩展的网络通信框架,主要用于简化网络应用的开发,特别是对于TCP和UDP协议。Mina以其高效的性能、灵活性和强大的功能在Java开发者中受到广泛欢迎,尤其适用于构建高...

    mina 应用

    4. **Handler**:处理器,是用户实现业务逻辑的地方,MINA会将接收到的事件转发到对应的Handler进行处理。 5. **IoEvent**:事件,MINA提供了多种事件类型,如连接建立、数据读取、连接关闭等,开发者可以通过实现...

    java mina组合包

    - **ProtocolCodecFactory**:用于将数据在原始字节流和应用对象之间进行编码和解码。 2. **异步事件驱动模型**: - Mina使用事件驱动模型,当有新的连接、读写事件发生时,会触发相应的事件处理器执行回调方法。...

    MINA_API+MINA_DOC+mina

    这个压缩包包含了MINA API文档、自学手册以及开发指南,对于学习和理解MINA框架有极大的帮助。 首先,`MINA-2.0.0-API.chm` 文件是MINA 2.0版本的API帮助文档,它是以CHM(Compiled Help Manual)格式编译的Windows...

    mina通讯例子

    总的来说,这个"mina通讯例子"是一个基础的MINA使用示例,展示了如何使用MINA库在客户端和服务器之间交换自定义对象。通过学习这个例子,开发者可以了解MINA的基本工作原理,并进一步探索如何利用MINA构建更复杂的...

    apache-mina源码

    1. **IoSession**:IoSession是MINA中的核心组件,代表了服务端和客户端之间的连接。它包含了会话的状态信息,如输入和输出缓冲区、读写事件、连接和断开时间等。IoSession还提供了数据传输的方法,如write()用于...

    mina框架的使用

    Apache MINA(Multipurpose Infrastructure for Network Applications)是一个Java框架,主要设计用于简化网络应用程序的开发,尤其是TCP/IP和UDP协议的应用。MINA 提供了一种高级的、高性能的、异步事件驱动的网络...

Global site tag (gtag.js) - Google Analytics