Mina框架与Spring整合配置文件

本文介绍如何将米娜框架与Spring框架进行整合,主要内容包括配置业务处理逻辑、解决数据包解码问题、多线程处理及日志记录等。通过具体的XML配置示例展示了整个整合过程。

米娜框架与春天配置整合性文件

米娜框架与春天的整合其实很简单,主要是要弄清楚要注入的属性的名称,进而选择合适的注入方法。

<?xml version =“1.0”encoding =“UTF-8”?>

<beans
xmlns =“http://www.springframework.org/schema/beans”
xmlns:xsi =“http://www.w3.org/2001/XMLSchema-instance”
xmlns:context =“http:// www .springframework.org / schema / context“
xsi:schemaLocation =”http://www.springframework.org/schema/beans
http://www.springframework.org/schema/beans/spring-beans.xsd
http:// www.springframework.org/schema/context
http://www.springframework.org/schema/context/spring-context.xsd“>
<! - 业务处理逻辑 - >
<bean id =”handler“class =” com.mina.handler.StrategyFactoryHandler“/>

<! - 累加数据包解码器:解断丢包,粘包问题 - >
<bean id =“codec”class =“org.apache.mina.filter.codec.ProtocolCodecFilter”>
<constructor-arg>
< bean class =“com.mina.codec.MyCodecFcatory”>
<constructor-arg index =“0”>
<bean class =“com.mina.codec.MyEncoder”> </ bean>
</ constructor-arg>
<constructor- arg index =“1”>
<bean class =“com.mina.codec.MyDecoder”>
</ bean>
</ constructor-arg>

</ bean>
</ constructor-arg>
</ bean>

<! - 多线程处理过滤器,为后面的操作开启多线程,一般放在编解码过滤器之后,开始业务逻辑处理 - >
<bean id =“executors”class =“org.apache.mina。 filter.executor.ExecutorFilter“/>
<! - Mina自带日志过滤器默认级别为debug - >
<bean id =”loggerFilter“class =”org.apache.mina.filter.logging.LoggingFilter“>
<property name =“messageReceivedLogLevel”ref =“info”> </ property>
<property name =“exceptionCaughtLogLevel”ref =“info”> </ property>
</ bean>
<! - 枚举类型依赖注入需要先通过此类进行类型转换 - >
<bean id =“info”class =“org.springframework.beans.factory.config.FieldRetrievingFactoryBean”>
<property name =“staticField”value =“org.apache.mina.filter.logging。LogLevel.INFO“/>
</ bean>
<bean id =”filterChainBuilder“class =”org.apache.mina.core.filterchain.DefaultIoFilterChainBuilder“>
<property name =“filters”>
<map>
<entry key =“codec”value-ref =“codec”/>
<entry key =“logger”value-ref =“loggerFilter”/>
<entry key =“executors” value-ref =“executors”/>
</ map>
</ property>
</ bean>
<! - 监听端口 - >
<bean id =“defaultLocalAddress”class =“java.net.InetSocketAddress”>
<constructor- arg index =“0”value =“$ {tcpPort}”> </ constructor-arg>
</ bean>
<! - session config通过工厂方法注入 - >
<bean id =“sessionConfig”factory-bean =“ ioAcceptor“factory-method =”getSessionConfig“>
<property name =“readerIdleTime”value =“10”/>
<property name =“minReadBufferSize”value =“512”/>
<property name =“maxReadBufferSize”value =“10240”/>
</ bean>
<bean id =“ioAcceptor”class =“org.apache.mina.transport.socket.nio.NioSocketAcceptor”
init-method =“bind”destroy-method =“unbind”>
<! - 默认启用的线程个数是CPU的核数+1, - >
<! - <constructor-arg index =“0”value =“10”> </ constructor-arg> - >
<property name =“defaultLocalAddress”ref =“defaultLocalAddress” />
<property name =“handler”ref =“handler”/>
<property name =“filterChainBuilder”ref =“filterChainBuilder”/>
</ bean>
</ beans>

地址原文http://www.bieryun.com/1800.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值