import java.io.IOException;
import java.net.InetSocketAddress;
import java.nio.ByteBuffer;
import java.nio.CharBuffer;
import java.nio.channels.SelectionKey;
import java.nio.channels.Selector;
import java.nio.channels.ServerSocketChannel;
import java.nio.channels.SocketChannel;
import java.nio.charset.Charset;
import java.nio.charset.CharsetDecoder;
import java.nio.charset.CharsetEncoder;
import java.util.Iterator;
public class Server extends Thread{
static int MAX_LEN = 2048;
// 定义检测SocketChannel的Selector对象
protected Selector selector = null;
protected ByteBuffer buff = ByteBuffer.allocate(MAX_LEN);
// 定义处理编码和解码的字符集
static CharsetEncoder encoder = Charset.forName("UTF-8").newEncoder();
protected CharsetDecoder decoder = null;
public Server(int port) throws IOException {
selector = this.getSelector(port);
Charset charset = Charset.forName("UTF-8");
decoder = charset.newDecoder();
}