`
phinecos
  • 浏览: 342938 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

Mina2.0快速入门

 
阅读更多

MinaTimeServer.java

<!--<br /><br />Code highlighting produced by Actipro CodeHighlighter (freeware)<br />http://www.CodeHighlighter.com/<br /><br />-->packagecom.vista;

importjava.io.IOException;
importjava.net.InetSocketAddress;
importjava.nio.charset.Charset;

importorg.apache.mina.core.service.IoAcceptor;
importorg.apache.mina.core.session.IdleStatus;
importorg.apache.mina.filter.codec.ProtocolCodecFilter;
importorg.apache.mina.filter.codec.textline.TextLineCodecFactory;
importorg.apache.mina.filter.logging.LoggingFilter;
importorg.apache.mina.transport.socket.nio.NioSocketAcceptor;


publicclassMinaTimeServer
{
privatestaticfinalintPORT=6488;
publicstaticvoidmain(String[]args)throwsIOException
{
//监听即将到来的TCP连接
IoAcceptoracceptor=newNioSocketAcceptor();
acceptor.getFilterChain().addLast(
"logger",newLoggingFilter());
acceptor.getFilterChain().addLast(
"codec",newProtocolCodecFilter(newTextLineCodecFactory(Charset.forName("UTF-8"))));

acceptor.setHandler(
newTimeServerHandler());

acceptor.getSessionConfig().setReadBufferSize(
2048);
acceptor.getSessionConfig().setIdleTime(IdleStatus.BOTH_IDLE,
10);

acceptor.bind(
newInetSocketAddress(PORT));
System.out.println(
"服务器启动");
}

}

TimeServerHandler.java

<!--<br /><br />Code highlighting produced by Actipro CodeHighlighter (freeware)<br />http://www.CodeHighlighter.com/<br /><br />-->packagecom.vista;

importjava.util.Date;

importorg.apache.mina.core.service.IoHandlerAdapter;
importorg.apache.mina.core.session.IdleStatus;
importorg.apache.mina.core.session.IoSession;

publicclassTimeServerHandlerextendsIoHandlerAdapter
{

publicvoidexceptionCaught(IoSessionsession,Throwablecause)throwsException
{
cause.printStackTrace();
}
publicvoidmessageReceived(IoSessionsession,Objectmessage)throwsException
{
StringstrMsg
=message.toString();
if(strMsg.trim().equalsIgnoreCase("quit"))
{
session.close();
return;
}
Datedate
=newDate();
session.write(date.toString());
System.out.println(
"Messagewritten");
}
publicvoidsessionIdle(IoSessionsession,IdleStatusstatus)throwsException
{
System.out.println(
"IDLE"+session.getIdleCount(status));
}

}

测试:

Client Output

Server Output

user@myhost:~> telnet 127.0.0.1 9123
Trying 127.0.0.1...
Connected to 127.0.0.1.
Escape character is '^]'.
hello
Wed Oct 17 23:23:36 EDT 2007
quit
Connection closed by foreign host.
user@myhost:~>

MINA Time server started.
Message written...

参考资料:1MINA v2.0 Quick Start Guide

分享到:
评论

相关推荐

    Mina2.0快速入门与源码剖析

    Mina2.0快速入门与源码剖析(个人经验文档)

    Mina 2.0快速入门与源码解析

    Mina 2.0快速入门与源码解析 很适合初学者使用!!!

    Mina2.0快速入门与源码剖析.docx

    java Mina2.0快速入门与源码剖析

    mina2.0教程

    自己整理的一些mina学习资料,内含MINA官方教程(中文版).docx,MINA-2.0.0-M4.chm(英文版),Apache_Mina_Server_2.0中文参考手册V1.0.pdf, 还有mina的包

    Apache MINA 2.0 用户指南中英文对照阅读版[带书签]

    本资源包含两个 pdf 文档,一本根据官方最新文档 (http://mina.apache.org/mina-project/userguide/user-guide-toc.html) 整理的 mina_2.0_user_guide_en.pdf,一个中文翻译的 mina_2.0_user_guide_cn.pdf。...

    MINA2.0入门教程(适合刚接触的人)

    MINA2.0入门教程(适合刚接触的人)

    Mina2.0自学手册

    Mina入门必备手册,详细讲述如何使用mina实现网络通讯。包含3个demo,边学边练。

    apache_mina2收集的教程

    Apache_Mina2官方教程翻译 Mina 2.0 工作原理以及配置中的注意事项 Mina 状态机介绍 Mina2.0快速入门与源码剖析

    Mina2.0学习笔记

    丰富的MINA实例介绍,java NIO 学习,mina快速入门宝典

    mina学习笔记

    mina学习资料 包含Mina学习笔记 Mina2.0快速入门与源码剖析 Apache_Mina_Server_2.0中文参考手册V1.0 我本人推荐新手可以看Mina学习笔记里面有实例!很适合新手

    资料_MINA(2、3、4).rar

    资源包括: MINA笔记.docx ...Mina2.0快速入门与源码剖析.pdf MINA网络框架和RMI的对比研究.pdf 基于3G网络的移动流媒体服务器的设计与实现.pdf 高性能通信框架及智能主站技术研究.nh MINA类图.doc 等

    Apache_Mina2.0学习笔记

    Mina入门 2 第一步.下载使用的Jar包 2 第二步.工程创建配置 2 第三步.服务端程序 3 第四步.客户端程序 6 第五步.长连接VS短连接 8 二. Mina基础 9 1.IoService接口 10 2.1.1 类结构 11 2.1.2 应用 12 2.IoFilter...

    Mina2.0入门

    NULL 博文链接:https://bijian1013.iteye.com/blog/2233454

    Mina2.0完全剖析,完全自学手册【完整版】.doc

    一. Mina入门 2 第一步.下载使用的Jar包 2 第二步.工程创建配置 2 第三步.服务端程序 3 第四步.客户端程序 6 第五步.长连接VS短连接 8 二. Mina基础 9 1.IoService接口 10 2.1.1 类结构 11 2.1.2 应用 12 2....

    MINA_API+MINA_DOC+mina

    里面包含mina2.0的api(英文)和mina自学手册,还有mina的开发指导

    Apache.Mina.Server.2.0.中文参考手册_李海峰

    又是李海峰写的,这厮写得不错,我就是通过它才入门的,顶!

    java开源包1

    6、支持多种通信框架(Mina/Netty/Grizzly),支持多种序列化/反序列化(Java/Hessian/PB); 7、支持自定义通信协议,可完全替换NFS-RPC自带的协议。 淘宝开放平台JAVA版SDK top4java 设计原则 容易维护扩展(不...

    java开源包11

    6、支持多种通信框架(Mina/Netty/Grizzly),支持多种序列化/反序列化(Java/Hessian/PB); 7、支持自定义通信协议,可完全替换NFS-RPC自带的协议。 淘宝开放平台JAVA版SDK top4java 设计原则 容易维护扩展(不...

    java开源包2

    6、支持多种通信框架(Mina/Netty/Grizzly),支持多种序列化/反序列化(Java/Hessian/PB); 7、支持自定义通信协议,可完全替换NFS-RPC自带的协议。 淘宝开放平台JAVA版SDK top4java 设计原则 容易维护扩展(不...

Global site tag (gtag.js) - Google Analytics