首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > 编程 >

Netty初步之hello world

2013-10-21 
Netty初步之hello world .package HelloWordimport static org.jboss.netty.channel.Channels.pipelinei

Netty初步之hello world .
package HelloWord;import static org.jboss.netty.channel.Channels.pipeline;import java.net.InetSocketAddress;import java.util.concurrent.Executors;import org.jboss.netty.bootstrap.ServerBootstrap;import org.jboss.netty.channel.ChannelPipeline;import org.jboss.netty.channel.ChannelPipelineFactory;import org.jboss.netty.channel.socket.nio.NioServerSocketChannelFactory;import org.jboss.netty.handler.codec.string.StringDecoder;import org.jboss.netty.handler.codec.string.StringEncoder;/** * 在本地8080端口启动netty服务 * @author Ransom * */public class Server{ public static void main(String[] args) { /* * server的注释和client类似,在这里就不重复了 * 但是需要注意的是server初始化的是ServerBootstrap的实例 * client初始化的是ClientBootstrap,两个是不一样的。 * 里面的channelfactory也是NioServerSocketChannelFactory。 */ ServerBootstrap bootstrap = new ServerBootstrap( new NioServerSocketChannelFactory( Executors.newCachedThreadPool(), Executors.newCachedThreadPool())); bootstrap.setPipelineFactory(new ChannelPipelineFactory() { @Override public ChannelPipeline getPipeline() throws Exception { ChannelPipeline pipleline = pipeline(); pipleline.addLast("encode", new StringEncoder()); pipleline.addLast("decode", new StringDecoder()); pipleline.addLast("handler", new Handler()); return pipleline; } }); bootstrap.bind(new InetSocketAddress(8080)); }}


4、HelloWordMain.java

[java] view plaincopyprint?
  1. package?HelloWord;??/**?
  2. ?*?Netty?初步之hello?word的client入口??*?@author?Ransom?
  3. ?*??*/??
  4. public?class?HelloWordMain??{??
  5. ????public?static?void?main(String[]?args)??????{??
  6. ????????ClientThread?r?=?new?ClientThread();??????????Thread?t?=?new?Thread(r);??
  7. ????????t.setName("client?thread");??????????t.start();??
  8. ??????????????????while(true)??
  9. ????????{??????????????try??
  10. ????????????{??????????????????Thread.sleep(3000);??
  11. ????????????}?catch?(InterruptedException?e)??????????????{??
  12. ????????????????//?TODO?Auto-generated?catch?block ??????????????????e.printStackTrace();??
  13. ????????????}??????????????r.sendMsg();??
  14. ????????}???????????
  15. ????}??}?

热点排行