Mina框架与Spring整合配置文件

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

关于Spring的四种注入方法请另一篇文章:spring依赖注入的四种方式

<?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>  

Mina框架与Spring整合配置文件

时间: 2024-11-10 13:42:29

Mina框架与Spring整合配置文件的相关文章

8 -- 深入使用Spring -- 7...2 MVC框架与Spring整合的思考

8.7.2 MVC 框架与Spring整合的思考 对于一个基于B/S架构的JAVA EE 应用而言,用户请求总是向MVC框架的控制器请求,而当控制器拦截到用户请求后,必须调用业务逻辑组件来处理用户请求.此时有一个问题:控制器应该如何获得业务逻辑组件? 最容易想到的策略是,直接通过new 关键字创建业务逻辑组件,然后调用业务逻辑组件的方法,根据业务逻辑方法的返回值确定结果. 在实际的应用中,很少见到采用上面的访问策略,因为这是一种非常差的策略.不这样做至少有如下三个原因: ⊙ 控制器直接创建业务逻

quartz任务调度框架与spring整合

Quartz是什么? Quartz 是一种功能丰富的,开放源码的作业调度库,可以在几乎任何Java应用程序集成 - 从最小的独立的应用程序到规模最大电子商务系统.Quartz可以用来创建简单或复杂的日程安排执行几十,几百,甚至是十万的作业数 - 作业被定义为标准的Java组件,可以执行几乎任何东西,可以编程让它们执行. Quartz调度包括许多企业级功能,如JTA事务和集群支持. 通过触发器结合cron表达式,可以实现丰富的执行策略满足生产需求. maven引入quartz包 <dependen

ssh框架中spring整合hibernate的配置文件模板(带详细注释)

applicationContext.xml的配置文件模板 1 <?xml version="1.0" encoding="UTF-8"?> 2 <beans 3 xmlns="http://www.springframework.org/schema/beans" 4 xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 5 xmlns:aop=&quo

jbpm工作流框架与Spring整合的步骤

1. 在jbpm.cfg.xml文件中注销掉自己的,导入需要的配置文件 <!-- 注销掉这个 <import resource="jbpm.tx.hibernate.cfg.xml" /> --> <!-- 添加这个配置文件 --> <import resource="jbpm.tx.spring.cfg.xml" /> 2.在hibernate.cfg.xml文件中导入配置文件 <!-- 这是jbmp的配置文件

Apache MINA框架整合到Spring框架中

毕业设计用到了Apache公司的MINA框架作为服务端与安卓客户端的通信框架. 问题:服务端分为两个部分,一个是基于javaEE平台的后台管理系统,另一个是基于MINA框架的服务,整个项目中需求是当tomcat服务器启动的时候,将MINA服务也一起启动起来,相当于服务端程序运行起来后,开启两个服务. 分析:服务端的后台管理系统是采用Spring+Hibernate框架整合搭建的,而当tomcat服务器启动后,会加载spring的配置文件,而spring配置文件中可以自定义监听器,将启动MINA服

Spring整合mybatis框架-Spring框架读取数据库配置文件

通过前面的例子我们能够知道Spring框架能够链接数据库,,但是通常情况下,我们的Spring核心配置文件中配置的内容会比较多,如果我么后期数据库链接有改动的话,去这么大的一个配置文件中修改数据库的链接是不怎么友好的,所以建议将数据库的配置单独分离出来,最后我们只通过Spring框架去读取数据库的配置文件,这样做是比较好的,实际项目也是这样做的. datasource.properties数据库配置文件 applicationContext.xml核心配置文件,读取properties文件 编写

整合Struts2框架和Spring框架

-----------------------siwuxie095 整合 Struts2 框架和 Spring 框架 1.导入相关 jar 包(共 27 个) (1)导入 Struts2 的基本 jar 包(13 个) 其中: 在 Struts2 和 Hibernate 中,都有 javassist,会产生冲突, 选择高版本,删除低版本即可 (2)导入 Spring 的核心 jar 包和日志相关的 jar 包(6 个) Commons Logging 下载链接: http://commons.a

Spring整合JUnit框架进行单元测试代码使用详解

[转]Spring整合JUnit框架进行单元测试代码使用详解 转自 http://blog.csdn.net/yaerfeng/article/details/25187775 感谢博主 :云淡风轻 .仅此一抹 一.Spring提供的JUnit框架扩展: 1. AbstractSpringContextTests:spring中使用spring上下文测试的Junit扩展类,我们一般不会使用这个类来进行单元测试,它是spring内部设计使用到的类    2. AbstractDependencyI

框架 day56 BOS项目练习(activiti,历史数据操作,流程变量,任务组,监听器,网关,spring整合)

BOS项目笔记第10天 内容: 1.历史数据查询(历史流程实例数据.历史任务数据.历史活动数据) 2.流程变量 3.组任务(候选人.候选组) 4.监听器(执行.任务) 5.网关(排他.并行) 6.spring整合activiti 1.    历史数据查询 历史是一个组件,它可以捕获发生在进程执行中的信息并永久的保存,与运行时数据不同的是,当流程实例运行完成之后它还会存在于数据库中. 在流程引擎配置对象中可以设置历史记录规则: 1.1   查询历史流程实例数据 表中内容包含已经完成的流程和正在进行