package minaTestServer;
import java.net.InetSocketAddress;
import java.nio.charset.Charset;
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.codec.textline.TextLineCodecFactory;
import org.apache.mina.filter.logging.LoggingFilter;
import org.apache.mina.transport.socket.nio.NioSocketAcceptor;
public class MinaTimeServer {
// 服务器监听端口
private static final int PORT = 8888;
/**
*
*/
public MinaTimeServer() {
// TODO Auto-generated constructor stub
}
/**
* @param args
*/
public static void main(String[] args) {
// 服务器端的主要对象
IoAcceptor acceptor = new NioSocketAcceptor();
// 设置Filter链
acceptor.getFilterChain().addLast("logger", new LoggingFilter());
// 协议解析,采用mina现成的UTF-8字符串处理方式
//acceptor.getFilterChain().addLast("codec", new ProtocolCodecFilter(new TextLineCodecFactory(Charset.forName("UTF-8"))));
acceptor.getFilterChain().addLast("codec", new ProtocolCodecFilter(new ObjectSerializationCodecFactory()));
// 设置消息处理类(创建、关闭Session,可读可写等等,继承自接口IoHandler)
acceptor.setHandler(new TimeServerHandler() );
// 设置接收缓存区大小
acceptor.getSessionConfig().setReadBufferSize(2048);
acceptor.getSessionConfig().setIdleTime(IdleStatus.BOTH_IDLE, 10);
try {
// 服务器开始监听
acceptor.bind( new InetSocketAddress(PORT) );
System.out.println("服务器端开始启动。。。。。。。。。。。。。");
}catch(Exception e){
e.printStackTrace();
}
}
}
mina服务器简单代码示例
需积分: 10 62 浏览量
2017-07-27
19:04:09
上传
评论
收藏 906KB ZIP 举报
hsbbhzz
- 粉丝: 3
- 资源: 11
最新资源
- 设备仪器数据库综合实验
- test.java
- 火车票刷票脚本,实时刷新票务信息
- 1_兰光MOM制造运营管理系统使用手册(202204).pdf
- 星星点亮小组评价软件,中小学课堂教学打分软件,用时打开,不用时隐藏,可以通过点亮星星的方式对小组进行激励
- Servlet学习笔记
- Win64OpenSSL-Light-3-3-0.exe win64 位 OpenSSL 3.3.0 安装包
- 笔记.pdf
- Win32OpenSSL-Light-3-3-0.exe win32 位 OpenSSL 3.3.0 安装包
- Win64OpenSSL-Light-3-2-1.exe win64 位 OpenSSL 3.2.1 安装包
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
评论0