Java NIO框架Netty教程(一) – Hello Netty

先啰嗦两句,若是你还不知道Netty是作什么的能作什么。那能够先简单的搜索了解一下。我只能说Netty是一个NIO的框架,能够用于开发分布式的Java程序。具体能作什么,各位能够尽可能发挥想象。技术,是服务于人而不是局限住人的。java

 Netty的简介和下载可参考:《开源Java高性能NIO框架推荐 – Netty》。注意,此时的最新版已经为3.5.2.Final。程序员

 若是你已经万事具有,那么咱们先从一段代码开始。程序员们习惯的上手第一步,天然是"Hello world",不过Netty官网的例子却恰恰抛弃了"Hello world"。那咱们就本身写一个最简单的"Hello world"的例子,做为上手。bootstrap

/**
  * Netty 服务端代码  
  *   
  * @author lihzh  
  * @alia OneCoder  
  * @blog http://www.coderli.com  
  */
public class HelloServer {       
    public static void main(String args[]) {         
        // Server服务启动器         
        ServerBootstrap bootstrap = new ServerBootstrap(                 
                new NioServerSocketChannelFactory( 
                        Executors.newCachedThreadPool(),                         
                        Executors.newCachedThreadPool()));         
        // 设置一个处理客户端消息和各类消息事件的类(Handler)         
        bootstrap.setPipelineFactory(new ChannelPipelineFactory() {        
               @Override
               public ChannelPipeline getPipeline()throws Exception {                         
                   return Channels.pipeline(new HelloServerHandler());
                }
            });         
        // 开放8000端口供客户端访问。         
        bootstrap.bind(new InetSocketAddress(8000));     
    } 
          
   private static class HelloServerHandler extends SimpleChannelHandler {           
    /**          
     * 当有客户端绑定到服务端的时候触发,打印"Hello world, I'm server."          
     *           
     * @alia OneCoder          
     * @author lihzh          
     */        
     @Override        
        public void channelConnecte(
                ChannelHandlerContext ctx,ChannelStateEvent e) {             
             System.out.println("Hello world, I'm server.");         
        }     
    } 
}
相关文章
相关标签/搜索