首页>代码>apache Mina开发实现多人聊天室程序命令行版本>/zuidaima_mina_server/src/main/java/com/zuidaima/mina/server/MinaServer.java
package com.zuidaima.mina.server; import java.io.IOException; import java.net.InetSocketAddress; import org.apache.mina.core.filterchain.DefaultIoFilterChainBuilder; import org.apache.mina.core.session.IdleStatus; import org.apache.mina.filter.codec.ProtocolCodecFilter; import org.apache.mina.transport.socket.SocketAcceptor; import org.apache.mina.transport.socket.nio.NioSocketAcceptor; import com.zuidaima.mina.server.factory.CharsetCodecFactory; import com.zuidaima.mina.server.message.ServerMessageHandler; /** * <b>function:</b> 服务器启动类 * * @author hoojo * @createDate 2012-6-29 下午07:11:00 * @file MinaServer.java * @package com.hoo.mina.server * @project ApacheMiNa * @blog http://blog.csdn.net/IBM_hoojo * @email hoojo_@126.com * @version 1.0 */ public class MinaServer { private SocketAcceptor acceptor; public MinaServer() { // 创建非阻塞的server端的Socket连接 acceptor = new NioSocketAcceptor(); } public boolean start() { DefaultIoFilterChainBuilder filterChain = acceptor.getFilterChain(); // 添加编码过滤器 处理乱码、编码问题 filterChain.addLast("codec", new ProtocolCodecFilter( new CharsetCodecFactory())); /* * LoggingFilter loggingFilter = new LoggingFilter(); * loggingFilter.setMessageReceivedLogLevel(LogLevel.INFO); * loggingFilter.setMessageSentLogLevel(LogLevel.INFO); // 添加日志过滤器 * filterChain.addLast("loger", loggingFilter); */ // 设置核心消息业务处理器 acceptor.setHandler(new ServerMessageHandler()); // 设置session配置,30秒内无操作进入空闲状态 acceptor.getSessionConfig().setIdleTime(IdleStatus.BOTH_IDLE, 30); try { // 绑定端口3456 acceptor.bind(new InetSocketAddress(3456)); } catch (IOException e) { e.printStackTrace(); return false; } return true; } public static void main(String[] args) { MinaServer server = new MinaServer(); server.start(); } }
最近下载更多
crosa_Don LV18
2022年7月23日
LHJ123 LV30
2019年2月1日
wen332 LV6
2019年1月4日
253702090 LV3
2018年5月19日
jic499 LV27
2018年4月14日
1943815081 LV13
2018年4月13日
lyh1989 LV34
2017年12月7日
fangjishuai LV2
2017年11月30日
dagf113225 LV68
2017年8月30日
xjc621105 LV17
2017年4月25日