accepthandler.java

来自「简单的WEB 应用(自己修改的)简单的WEB 应用」· Java 代码 · 共 28 行

JAVA
28
字号
import java.io.*;
import java.nio.*;
import java.nio.channels.*;

public class AcceptHandler implements Handler {
  public void handle(SelectionKey key) throws IOException {
    ServerSocketChannel serverSocketChannel=(ServerSocketChannel)key.channel();
    SocketChannel socketChannel = serverSocketChannel.accept();
    if (socketChannel== null)return;
    
	String address = "接收到客户连接,来自: " + socketChannel.socket().getInetAddress() + ":" + socketChannel.socket().getPort();
    FileChannelTester.writeFile(address,"");
    
    //System.out.println(address);

    ChannelIO cio =new ChannelIO(socketChannel, false/*非阻塞模式*/);
    RequestHandler rh = new RequestHandler(cio);
    socketChannel.register(key.selector(), SelectionKey.OP_READ, rh);
  }
}


/****************************************************
 * 作者:孙卫琴                                     *
 * 来源:<<Java网络编程精解>>                       *
 * 技术支持网址:www.javathinker.org                *
 ***************************************************/

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?