深入理解Apache Mina (2)---- 与IoFilter相关的几个类
2009-09-16 00:00:00 来源:WEB开发网上图表示了数据在本程序中通过过滤器链的过程,日志过滤器是根据会话 (IoSession)的状态(创建、开启、发送、接收、异常等等)来记录会话的事件信息的,编解码器是根据会话的接收和发送数据来触发事件的,从这里我们也可以了解通过过滤器我们可以专门针对会话的某个或某几个状态来专门处理相关的事件,如异常事件,我们可以专门定义一个Exception的 IoFilter来处理Mina在通信中所发生的异常信息。
还有一个比较有意思的问题是,假如我们将上面过滤器的顺序该成下面的样子:
Java代码
config.getFilterChain().addLast("logger", new LoggingFilter());//添加日志工具
// 配置数据的编解码器
config.getFilterChain().addLast("codec",
new ProtocolCodecFilter(new ObjectSerializationCodecFactory()));
程序的执行结果如下:
已经连接到了服务器 localhost/127.0.0.1:4321
2009-7-10 0:30:12 org.apache.mina.util.SessionLog info
信息: [localhost/127.0.0.1:4321] CREATED
2009-7-10 0:30:12 org.apache.mina.util.SessionLog info
信息: [localhost/127.0.0.1:4321] OPENED
2009-7-10 0:30:12 org.apache.mina.util.SessionLog info
信息: [localhost/127.0.0.1:4321] RECEIVED: DirectBuffer[pos=0 lim=56 cap=1024: 00 00 00 34 AC ED 00 05 74 00 2D 20 20 E6 9C 8D E5 8A A1 E5 99 A8 E5 88 9B E5 BB BA E4 BC 9A E8 AF 9D
E6 97 B6 E5 8F 91 E9 80 81 E7 9A 84 E4 BF A1 E6 81 AF 20 E3 80 82]
客户端接收到的服务器的信息是 服务器创建会话时发送的信息 。
- ››apache设置域名绑定 以及绑定不起作用的排查
- ››apache rewrite将指定URL转向指定的几个服务器
- ››apache配置文件httpd.comf部分参数说明
- ››Apache+Mysql+PHP+phpMyAdmin+Mac OS X 10.7 Lion...
- ››深入理解JAR包
- ››apache+tomcat负载均衡_项目实例
- ››apache mysql php 源码编译使用
- ››深入分析Volatile的实现原理
- ››深入理解Flash Player的应用程序域(Application ...
- ››深入理解flash函数(AS2)
- ››Apache添加mod_aspdotnet.so支持ASP.NET配置指南
- ››Apache中改变php.ini的路径
更多精彩
赞助商链接