此章节比较零散,主要为与Spring整合及业务处理做准备,没有涉及到具体的配置,都是一些工具类的实现。 具体的整合Spring,使用的一下的这些类,下面的一章描述了如何使用这些类,看的比较晕的,可以多看看直接的配置,了解mina的运行流程。 完整的项目架构: 统一通信类 规范消息类型     目的:使用统一的封装类型,服务端接收固定的消息对象,服务端发送固定的消息对象,规范客户...

Mina工作原理分析

mina

  

2020-03-27 16:15:45

Mina是Apache社区维护的一个开源的高性能IO框架,在业界内久经考验,广为使用。Mina与后来兴起的高性能IO新贵Netty一样,都是韩国人Trustin Lee的大作,二者的设计理念是极为相似的。在作为一个强大的开发工具的同时,这两个框架的优雅设计和不俗的表现,有很多地方是值得学习和借鉴的。本文将从Mina工作原理的角度出发,对其结构进行分析。 总体结构 Mina的底层依赖的主要是Java...

Apache Mina入门案例

mina  nio

  

2019-08-16 17:31:41

    Apache Mina是一个能够帮助用户开发高性能和高伸缩性网络应用程序的框架。它通过Java nio技术基于TCP/IP和UDP/IP协议提供了抽象的、事件驱动的、异步的API。我们可以使用mina解决一些点对点通信的问题。 首先是引入项目所需要的依赖。 第二步服务端业务处理ServerHandler,这里继承自IoHandlerAdapter,重写其中的主...

mina框架详解(一)

mina框架

  

2020-03-20 04:51:57

mina框架详解 ​ Apache Mina Server 是一个网络通信应用框架,也就是说,它主要是对基于TCP/IP、UDP/IP协议栈的通信框架(当然,也可以提供JAVA 对象的序列化服务、虚拟机管道通信服务等),Mina 可以帮助我们快速开发高性能、高扩展性的网络通信应用,Mina 提供了事件驱动、异步(Mina 的异步IO 默认使用的是JAVA NIO 作为底层支持)操作的编程模型。Mi...

Mina基础maven配置

mina  maven

  

2020-05-19 02:52:45

Mina构件maven配置 第一步创建maven项目 1.maven项目的创建过程简单可以在网上参考 第二步引入Mina相关依赖构件 打开编辑maven项目中的pom.xml文件,位置如图 添加如下代码到pom.xml中<dependencies></dependencies>标签内 右键项目名->maven->update Project.. 如图 这一步使得...

随笔 @mina通讯框架

Java  mina

  

2020-06-10 02:16:23

夜光序言: 知道吗,世界上有一种东西叫做“执著”, 它会使你的生命散发光彩。 有了执著才有了说“不悔”的机会。     正文: MINA框架的特点有: 基于java NIO类库开发; 采用非阻塞方式的异步传输; 事件驱动;支 持批量数据传输; 支持TCP、UDP协议; 控制反转的设计模式(支持Spring); 采用优雅的松耦合架构...

java中关于MINA (UDP)

mina  java

  

2020-07-25 13:41:36

NIO API是在Java 1.4引入的。MINA是基于NIO编写的。首先要了解NIO与BIO的概念以及区别,NIO代表非阻塞IO,BIO代表着阻塞式IO。具体细节请百度。。。 MINA是一个简单但功能齐全的网络应用框架(其实已经被NettyPK掉了,但都是一类型的东西,很多东西相通的,因为我们单位在用MINA所以优先看这个)。 MINA的使用流程: 编写自己的IoService,在这里我们创建I...

Mina 断线重连

Mina 断线重连  MINA重连

  

2019-07-12 10:07:58

Mina 断线重连     定义:这里讨论的Mina 断线重连是指使用mina作为客户端软件,连接其他提供Socket通讯服务的服务器端。Socket服务器可以是Mina提供的服务器,也可以是C++提供的服务器。             一、断线重连的方式;     1...

1、深入解析Apache Mina源码(1)——Mina的过滤器机制实现 2、深入解析Apache Mina源码(2)——Mina的事件模型   一、观察者模式的本来面目 工作时间长了,会发现代码中的很多东西都是相通相似的,就说JAVA的事件机制其实就是观察者模式的实现,学会了观察者模式,事件机制自己无师自通,先以我的角度看看什么是观察者模...

第四章 - Session 会话(Session)是MINA的最重要的部分之一:每当一个客户端连接到服务器,MINA都会创建一个新的会话,并且会一直保存在内存中,直到客户端断开连接。 会话用来存放连接的持久化信息和请求处理过程中需要的任何信息, 这些信息会存在于整个会话生命周期。 会话状态 会话是有状态的,并且状态会发生变化:     连接:会话创建并且可用。 &nb...

第三章 - IoService 在第二章我们已经看到无论在服务端还是在客户端,MINA里的IoService接口都是所有IO服务实现的基类。它负责处理你的应用程序和远程主机之间的交互,收发消息, 管理会话和连接等工作。IoService是一个接口,在服务端被实现为IoAcceptor,在客户端被实现为IoConnector。 在这一章中我们会了解到下面的内容:    ...

第二章 - 基础 在第一章,我们对Apache MINA有了一个大致的了解。在这一章里我们来研究一下客户端/服务器架构以及如何创建基于MINA的服务器和客户端。 我们还会做一下简单的TCP和UDP协议的服务器和客户端。 基于MINA的应用程序架构 经常有人会问:基于MINA的应用程序是什么样子?在本章中我们会介绍基于MINA的应用程序架构。 鸟瞰图 :   这里,我们可以看见MINA是应...

这篇文章也是通过学习mina框架视频来的,网上也有很多类似的代码,这里通过自己敲一遍代码,熟悉mina框架的使用以及安卓编程。mina框架作为一个网络异步编程框架,它和netty一样,底层实现了nio。 核心类: IoAcceptor:服务端接收器,负责创建socket服务,并监听客户端连接。 IoSession:连接会话,可以通过write方法向外发送消息。 IoHandlerAdapter:连...

       Mina最主要的工作就是把底层传输的字节码转换为Java对象,提供给应用程序;或者把应用程序返回的结果转换为字节码,交给底层传输。完成转换功能,则需要相应的编解码器,这些都是由IoFilter完成的,因此IoFilter是Mina的精髓所在。         Filter,过滤器的意思...

Spring 作为服务端 将类交给Spring管理,通过配置文件注入所需要的Bean,通过配置文件绑定端口启动Mina服务端。 项目整体代码目录结构(见上一篇):       1. 设置I/O接收器  2. 会话管理类,注入服务端的处理handler   3. 注入线程池filter、日志filter、编解码工厂 4. 心跳机制filte...