Mina2.0学习笔记.doc

Mina2.0学习笔记

Mina2.0学习笔记 目录 引言 3 一. Mina入门 3 第一步.下载使用的Jar包 3 第二步.工程创建配置 4 第三步.服务端程序 4 第四步.使用telnet命令来测试服务端 6 第五步.客户端程序 9 第六步.长连接VS短连接 11 第七步.入门程序02 12 第八步.入门程序03 17 二. Mina基础 21 2.1.IoService接口 22 2.1.1 类结构 22 2.1.2 应用 23 总结 26 2.2.IoFilter接口 26 2.2.1 类结构 26 2.2.2 应用 28 总结 62 2.3.IoHandler接口 62 三. Mina解析 63 3.1 NIO分析 63 3.1.1 传统阻塞服务器 64 3.1.2 多线程阻塞服务器 68 3.1.3 使用JDK自带线程池的阻塞服务器 74 3.1.4 NIO 基础知识 77 3.1.5 基于NIO的阻塞服务器 81 3.1.6 基于NIO的非阻塞服务器 85 3.1.7 多线程的基于NIO的非阻塞服务器 85 3.2 异步操作分析 85 3.3 Mina内部实现分析 85 3.4 Mina的线程模型配置 85 四. Mina实例 87 五. 后记 88 引言 最近使用Mina开发一个Java的NIO服务端程序,因此也特意学习了Apache的这个Mina框架。 首先,Mina是个什么东西?看下官方网站(/)对它的解释: Apache的Mina(Multipurpose Infrastructure Networked Applications)是一个网络应用框架,可以帮助用户开发高性能和高扩展性的网络应用程序;它提供了一个抽象的、事件驱动的异步API,使Java NIO在各种传输协议(如TCP/IP,UDP/IP协议等)下快速高效开发。 Apache Mina也称为: NIO框架 客户端/服务端框架(典型的C/S架构) 网络套接字(networking socket)/source/2959399 ) Mina入门 先用Mina做一个简单的应用程序。 第一步.下载使用的Jar包 登录/downloads.html 下载 mina2.0.1.zip,解压获得mina-core-2.0.0-M1.jar 登录 /download.html 下载slf4j1.5.2.zip,解压获得slf4j-api-1.5.2.jar 与 slf4j-log4j12-1.5.2.jar 添加Log4j的jar包,注意如果使用slf4j-log4j12-XXX.jar,就需要添加log4j1.2.X。我这里使用的是log4j-1.2.14.jar (Logger和slf配置详情参见/first-steps.html ) OK,4个jar都完备了。 第二步.工程创建配置 创建一个Java Project(默认使用UTF-8编码格式),添加perties log4j.rootLogger=DEBUG,MINA,file log4j.appender.MINA=org.apache.log4j.ConsoleAppender log4j.appender.MINA.layout=org.apache.log4j.PatternLayout log4j.appender.MINA.layout.ConversionPattern=%d{yyyy-MM-dd HH\:mm\:ss,SSS} %-5p %c{1} %x - %m%n log4j.appender.file=org.apache.log4j.RollingFileAppender log4j.appender.file.File=./log/minademos.log log4j.appender.file.MaxFileSize=5120KB log4j.appender.file.MaxBackupIndex=10 log4j.appender.file.layout=org.apache.log4j.PatternLayout log4j.appender.file.layout.ConversionPattern=[VAMS][%d] %p | %m | [%t] %C.%M(%L)%n 第三步.服务端程序 创建一个简单的服务端程序:(服务端绑定3005端口) public class Demo1Server { private static Logger logger = Logger.getLogger(Demo1Server.class); private static int PO

文档评论(0)

1亿VIP精品文档

相关文档