实现一个客户端与服务端通信的程序,可以使用socket网络编程来实现,而Netty作为一个封装了JDK的NIO通讯的异步事件驱动的网络应用框架,也同样可以实现。
1.创建Maven项目,在pom文件中引入Netty依赖。
<dependency>
<groupId>io.netty</groupId>
<artifactId>netty-all</artifactId>
<version>4.1.6.Final</version>
</dependency>
2.创建服务端NettyServer.java
,代码如下:
public class NettyServer {
public static void main(String[] args) {
//引导类,引导我们进行服务端的启动工作
ServerBootstrap serverBootstrap=new ServerBootstrap();
//监听端口,创建新连接的线程组
NioEventLoopGroup boos=new NioEventLoopGroup();
//表示处理每一条连接的数据读写的线程组
NioEventLoopGroup worker=new NioEventLoopGroup();
serverBootstrap
//给引导类配置两大线程,这个引导类的线程模型也就定型了
.group(boos,worker)
//指定我们服务端的IO模型为NIO,NioServerSocketChannel是对NIO类型的连接的抽象,类似于ServerSocke