是不是想在使用spring配置mina的时候,配置IoAccept中的sessionConfig中的属性?比如readBufferSize和 IdleTime
如果你用java代码你会这样写:
IoAcceptor acceptor=new NioSocketAcceptor();
acceptor.getSessionConfig().setReadBufferSize(2048);
acceptor.getSessionConfig.setIdleTime(IdleStatus.BOTH_IDLE,10);
那么用spring配置的时候怎么写呢?
先看下NioSocketAccept的构造方法:
public NioSocketAcceptor() {
super(new DefaultSocketSessionConfig(), NioProcessor.class);
((DefaultSocketSessionConfig) getSessionConfig()).init(this);
}
得知 DefaultSocketSessionConfig 被实例化。
看到方法:
public SocketSessionConfig getSessionConfig() {
return (SocketSessionConfig) super.getSessionConfig();
}
得知获取方法为getSessionConfig。
我们看到 DefaultSocketSessionConfig 以及其 继承的类中 有一些 set*方法。setReceiveBufferSize
setBothIdleTime
setReaderIdleTime等
我们可以通过spring来注入这些参数的值。
代码如下:
<!-- session config -->
<bean id="sessionConfig" factory-bean="serverAcceptor"
factory-method="getSessionConfig" >
<property name="bothIdleTime" value="10"/>
<property name="receiveBufferSize" value="1024"/>
</bean>
<!-- server -->
<bean id="serverAcceptor" class="org.apache.mina.transport.socket.nio.NioSocketAcceptor"
init-method="bind" destroy-method="unbind">
<property name="defaultLocalAddress">
<bean class="java.net.InetSocketAddress">
<constructor-arg>
<value>9123</value>
</constructor-arg>
</bean>
</property>
<property name="handler" ref="tspChainedIoHandler" />
<property name="filterChainBuilder" ref="filterChainBuilder" />
</bean>
至此便可完成在spring中配置IoAccept中的sessionConfig中的属性。
分享到:
相关推荐
`SessionConfig`是用于配置IoSession的重要接口,它提供了多种配置选项来调整网络连接的行为。例如: - `setSessionReceiveBufferSize(int size)`:设置接收缓冲区的大小。 - `setKeepAlive(boolean keepAlive)`:...
从"mima-cloud-parent-hoxton"这个名称推测,该项目可能使用了Maven作为构建工具,"parent"通常表示这是一个父POM(Project Object Model),用于设置子模块共有的属性,如版本号、依赖管理和插件配置。"hoxton"可能...
下载这个“mima框架所需的包集合”后,开发者需要按照特定的顺序和方式导入这些库,配置相关的环境变量,然后就可以开始使用MIMA框架进行开发了。在实际使用中,需要注意线程安全、性能优化以及避免死锁等问题。同时...
1.启动服务端程序 2.Windows 下开始菜单,运行,输入cmd,回车 3.输入:telnet 127.0.0.1 3005 回车 ...5.telnet 中随便输入一个字符串,回车 则可以看到返回的日期 6.输入bye,回车,提示服务端断开连接
SpringCloud是Java领域中广泛使用的微服务框架,它提供了一系列工具和组件,帮助开发者构建、配置、管理和协调分布式系统。SpringCloud基于SpringBoot,利用了其便捷的开发特性,简化了微服务架构的搭建过程。在本文...
在本压缩包“mima.rar_LabVIEW mima_labview授权”中,我们可以推测其包含的是一个使用LabVIEW编写的名为“密码程序”的应用,这个程序主要负责系统的保护和授权功能。 LabVIEW的编程方式称为G语言,这是一种基于...
在IT行业中,Spring Boot是一个非常流行的微服务框架,它简化了Spring应用的初始化和配置。而Apache CXF则是一个强大的Web服务框架,用于创建和消费Web服务。本教程将详细介绍如何利用Spring Boot与CXF进行集成,以...
总的来说,"mima.zip_密码机原理图"项目提供了一个实用且有趣的教学实例,帮助我们深入理解52单片机和PROTUES软件在实际应用中的作用,同时也能锻炼我们的电路设计和编程技能。对于任何想要深入学习单片机和嵌入式...
在信息技术领域,密码学是一门至关重要的学科,它涉及到信息的安全传输、数据...通过深入研究“mima.rar_genetic”压缩包中的源代码,我们可以更好地理解这一领域的精妙之处,并可能发掘出更多潜在的安全解决方案。
4. **快速输入功能**:可能存在一个便捷的函数,比如 `quick_input()`,用于保存和重用正确的密码,使得用户无需每次都手动输入六位数字。 5. **安全性考虑**:在实际的密码管理应用中,还会涉及到密码的加密存储和...
VHDL(VHSIC Hardware Description Language)是一种用于电子设计自动化领域的硬件描述语言,它允许工程师用高级语言来描述数字系统的功能和行为。在本例中,“MIMA.rar”是一个包含VHDL代码的压缩文件,用于实现一...
标题中的“mima.zip111”可能是一个个人创建的压缩文件,暗示着它包含了用户的一些私人文档或项目资料。描述中提到的“个人文件存储”进一步确认了这一点,说明这个压缩包可能是用户为了备份或者传输自己的文件而...
【中原地产金地MIMA项目营销策略报告】是关于房地产市场营销的一个详细规划,旨在通过精心设计的策略推动金地MIMA项目的成功销售。...通过符号化和创新的营销手段,金地MIMA项目有望在深港两地房地产市场中脱颖而出。
### Dell和IBM配置IPMI详解 #### 一、Dell服务器IPMI配置步骤 ##### 1.1 DELL R410 和 R510 的配置流程 在配置DELL R410 和 R510 服务器时,首先需要进行以下操作: - **进入PXE配置**:开机过程中按下`Ctrl+E`键...
本文将深入探讨C++语言在实现短路电流计算中的应用,并结合"mima.txt"文件可能包含的相关算法或数据,来阐述这一领域的关键知识点。 短路电流是指在电力系统中,当不同电位的导体意外接触或者通过低阻抗路径相连时...
在“mima.c”文件中,我们可以看到以下几个关键模块的实现: 1. **密码验证模块**:此模块负责接收用户输入的密码,与预存的正确密码进行比对,根据结果决定是否解锁。 2. **错误计数器模块**:记录连续输入错误...
- 该项目策略侧重于利用金地MIMA的独特优势,结合深圳和香港的市场特性。首先,通过在深圳启动营销活动,借助地段优势和具有象征意义的产品影响力,逐步引导市场销售。随后,乘深圳市场的热度,采用脉冲式策略进入...
在IT行业中,触摸屏技术已经广泛应用,特别是在工业自动化领域,其中维纶屏(Weinview HMI)是一款常见的触摸屏设备。"mima.rar_维纶屏"这个压缩包文件显然是针对维纶屏的一个特定应用——密码等级程序。这个程序...
在本案例中,"mima.rar" 提供的是一个使用 LabVIEW 开发的密码登录界面,它已经过调试,可以直接用于实际项目。这个登录界面是 LabVIEW 界面设计的一个实例,展示了如何构建用户交互的图形界面。 LabVIEW 的界面...
这个压缩包中的"mima"文件可能包含了实现上述功能的源代码或可执行文件,对于学习基础编程或密码处理的初学者来说,这是一个很好的学习资源。通过分析和理解代码,可以进一步提升对密码输入处理、事件驱动编程和安全...