您的位置:首页 > 理论基础 > 计算机网络

网络框架 - 安卓之Apache MINA

2015-07-16 20:21 267 查看
【诞生背景】

Socket是一种很少用的东西了,而且又是阻塞性的,

So,MINA 出现了(socket进行的第三次封装)。

  为什么是第三次封装?

答: 第二次封装是NIO
用法,太过复杂,所以进行了第三次封装。

【概念】

         Apache 
 
MINA ,是一个网络应用程序框架,用来帮助用户简单地开发高性能和高可扩展性的网络应用程序。它提供了一个通过Java NIO在不同的传输例如TCP/IP和UDP/IP上抽象的事件驱动的异步API。

【为什么用?】

         a.MINA 在网上的资料比较全,用的也比较广泛。

 
       b.提供了事件驱动、异步操作的编程模型。(备注:Mina
的异步IO ,默认使用的是  JAVA NIO 作为底层支持)

【android+mina 开发环境搭建 】

1.服务器端:

a.引入json-lib-2.0-jdk15.jar,mina-core-2.0.4.jar,slf4j-api-1.6.3.jar,slf4j-simple-1.6.3.jar,

b.这个直接右键项目,properties
---> javabuild path ---> add external jars

2.客户端:(注意:很容易报NoClassDefException的错误
!!!)

a.在android工程下新建文件夹Libs,

b.在libs上右键useas
source folder(这个很重要),

c.将mina-core-2.0.4.jar,slf4j-android-1.6.1-RC1.jar
放到libs下,

d.右键这两个jar,addto
buildpath
e.配置完成

备注:

下面提供的Demo,不需要自己搭建服务器环境。因为安卓手机,同时充当客户端和服务器,代码主要是为了了解,框架中的类的操作,熟悉原理。

【开发常识了解
- 课外概念】

掌握JAVA
IO、JAVA NIO、JAVASocket、JAVA 线程,并发库(java.util.concurrent.*)

【MINA
基本类的描述】

IoAccepter
相当于网络应用程序中的服务器端 
IoConnector 相当于客户端 
IoSession 当前客户端到服务器端的一个连接实例 
IoHandler 业务处理逻辑 
IoFilter 过滤器用于悬接通讯层接口与业务层接口

【Demo下载】
http://download.csdn.net/detail/zgxzgxzg/8907029
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  安卓之Apache MINA