mina 学习(2)

来源:互联网 发布:优化诊断zhangzifan 编辑:程序博客网 时间:2024/05/21 10:51

上节中通过一个简单的例子,对Mina框架有了大体的了解,在上节的基础上,看看 怎样实现客户端与服务端的通信,

废话不多说了,直接看代码:

[java] view plaincopyprint?
  1. public class Test {  
  2.   
  3.     public static void main(String[] args) throws Exception{  
  4.         SocketConnector connector = new NioSocketConnector();  
  5.         IoFilter filter = new ProtocolCodecFilter(new TextLineCodecFactory());  
  6.         connector.getFilterChain().addLast("vestigge", filter);  
  7.         SocketAddress soketAddress = new InetSocketAddress("127.0.0.1"5469);  
  8.         connector.setHandler(new ClientHandler());  
  9.         ConnectFuture future= connector.connect(soketAddress);  
  10.         future.join();  
  11.         if (!future.isConnected()) {  
  12.             System.out.println("连接服务器失败");  
  13.             return;  
  14.         }  
  15.         future.getSession().write("hello");  
  16.     }  
  17. }  

可以看到代码与服务器端的代码很像,也是非常的简单,这就是框架的好处,不用再重复发明轮子,省了不少事,

[java] view plaincopyprint?
  1. public class ClientHandler extends IoHandlerAdapter {  
  2.       
  3.     public void messageReceived(IoSession arg0, Object message) throws Exception {  
  4.         System.out.println("收到服务器消息:" + message.toString());  
  5.     }  
  6.   
  7.     public void exceptionCaught(IoSession arg0, Throwable arg1)  
  8.             throws Exception {  
  9.   
  10.     }  
  11. }  

效果演示:



0 0
原创粉丝点击