Mina通信框架实现客服端与服务端互相发送消息
Mina的原理就不说了,百度上很多。
启动服务器的MinaServer类:
package MinaServer;
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.net.InetSocketAddress;
import java.nio.charset.Charset;
import java.util.Iterator;
import java.util.Map;
import java.util.Scanner;
import org.apache.mina.core.future.ConnectFuture;
import org.apache.mina.core.service.IoAcceptor;
import org.apache.mina.core.session.IdleStatus;
import org.apache.mina.core.session.IoSession;
import org.apache.mina.filter.codec.ProtocolCodecFilter;
import org.apache.mina.filter.codec.prefixedstring.PrefixedStringCodecFactory;
import org.apache.mina.filter.logging.LoggingFilter;
import org.apache.mina.transport.socket.nio.NioSocketAcceptor;
/**
*呆呆
*2017.9.15
*/
public class MinaServer {
private static final int PORT = 9123;
private static IoAcceptor acceptor;
public static void main(String[] args) throws IOException
{
// 创建服务监听器,6是IoProcessor的线程数
acceptor = new NioSocketAcceptor(6);
// 增加日志过滤器
acceptor.getFilterChain().addLast("logger", new LoggingFilter());
// 增加编码过滤器,统一编码UTF-8
acceptor.getFilterChain().addLast(