package net.aimeizi.mina.examples.tcp; import java.net.InetSocketAddress; import net.aimeizi.mina.examples.handler.HelloServerHandler; import org.apache.mina.core.service.IoAcceptor; import org.apache.mina.core.session.IdleStatus; import org.apache.mina.filter.codec.ProtocolCodecFilter; import org.apache.mina.filter.codec.serialization.ObjectSerializationCodecFactory; import org.apache.mina.filter.logging.LoggingFilter; import org.apache.mina.filter.logging.MdcInjectionFilter; import org.apache.mina.transport.socket.nio.NioSocketAcceptor; /** * 基于Tcp的服务端 * @author welcome * */ public class HelloTcpServer { private static final int PORT = 9898; public static void main(String[] args) throws Exception { IoAcceptor acceptor = new NioSocketAcceptor(); //TCP Acceptor acceptor.getFilterChain().addLast("logging", new LoggingFilter()); acceptor.getFilterChain().addLast("codec", new ProtocolCodecFilter(new ObjectSerializationCodecFactory())); acceptor.getFilterChain().addLast("mdc", new MdcInjectionFilter()); acceptor.setHandler(new HelloServerHandler()); acceptor.getSessionConfig().setReadBufferSize(2048); acceptor.getSessionConfig().setIdleTime(IdleStatus.BOTH_IDLE, 10); acceptor.bind(new InetSocketAddress(PORT)); } }