mina与spring集成(翻译)
2013-08-02 11:32
274 查看
源地址:http://mina.apache.org/mina-project/userguide/ch17-spring-integration/ch17-spring-integration.html
一个mina应用主要包括一下方面:
One Handler
Two Filter - Logging Filter and a ProtocolCodec Filter
NioDatagram Socket
一个mina 服务端的实例程序如下:
继承过程如下:
1.设置IO handler。在spring context文件中设置IO handler。
2.创建过滤器链。
3.创建socket并设置socket参数
测试程序
一个mina应用主要包括一下方面:
One Handler
Two Filter - Logging Filter and a ProtocolCodec Filter
NioDatagram Socket
一个mina 服务端的实例程序如下:
public void initialize() throws IOException { // Create an Acceptor NioDatagramAcceptor acceptor = new NioDatagramAcceptor(); // Add Handler acceptor.setHandler(new ServerHandler()); acceptor.getFilterChain().addLast("logging", new LoggingFilter()); acceptor.getFilterChain().addLast("codec", new ProtocolCodecFilter(new SNMPCodecFactory())); // Create Session Configuration DatagramSessionConfig dcfg = acceptor.getSessionConfig(); dcfg.setReuseAddress(true); logger.debug("Starting Server......"); // Bind and be ready to listen acceptor.bind(new InetSocketAddress(DEFAULT_PORT)); logger.debug("Server listening on "+DEFAULT_PORT); }
继承过程如下:
1.设置IO handler。在spring context文件中设置IO handler。
<!-- The IoHandler implementation --> <bean id="trapHandler" class="com.ashishpaliwal.udp.mina.server.ServerHandler">
2.创建过滤器链。
<bean id="snmpCodecFilter" class="org.apache.mina.filter.codec.ProtocolCodecFilter"> <constructor-arg> <bean class="com.ashishpaliwal.udp.mina.snmp.SNMPCodecFactory" /> </constructor-arg> </bean> <bean id="loggingFilter" class="org.apache.mina.filter.logging.LoggingFilter" /> <!-- The filter chain. --> <bean id="filterChainBuilder" class="org.apache.mina.core.filterchain.DefaultIoFilterChainBuilder"> <property name="filters"> <map> <entry key="loggingFilter" value-ref="loggingFilter"/> <entry key="codecFilter" value-ref="snmpCodecFilter"/> </map> </property> </bean>
3.创建socket并设置socket参数
<bean class="org.springframework.beans.factory.config.CustomEditorConfigurer"> <property name="customEditors"> <map> <entry key="java.net.SocketAddress"> <bean class="org.apache.mina.integration.beans.InetSocketAddressEditor" /> </entry> </map> </property> </bean> <!-- The IoAcceptor which binds to port 161 --> <bean id="ioAcceptor" class="org.apache.mina.transport.socket.nio.NioDatagramAcceptor" init-method="bind" destroy-method="unbind"> <property name="defaultLocalAddress" value=":161" /> <property name="handler" ref="trapHandler" /> <property name="filterChainBuilder" ref="filterChainBuilder" /> </bean>
测试程序
public void initializeViaSpring() throws Exception { new ClassPathXmlApplicationContext("trapReceiverContext.xml"); }
相关文章推荐
- mina与spring集成(翻译)
- spring 集成 mina入门
- [置顶] spring集成mina 实现消息推送以及转发
- Spring4 集成Mina
- MINA与JMX集成(翻译)
- Mina2.x与Spring2.5.6集成
- mina与spring2.5.6的集成
- [置顶] spring集成mina 实现消息推送以及转发
- maven mina spring 集成应用
- 翻译spring.net 帮助文档--第24章 Spring.net 与visual studio.net的集成
- Mina入门教程(二)----Spring4 集成Mina
- spring和mina2集成报错Cannot convert value of type ..for property 'customEditors..PropertyEditor.
- MINA与JMX集成(翻译)
- spring集成mina,包含心跳检测,实现服务端主动推送
- Mina入门教程(二)----Spring4 集成Mina
- Spring集成Mina
- [翻译-Shiro]-集成Apache Shiro到基于Spring的应用
- spring boot 官方文档翻译之 集成 dubbo zookeeper
- 详解spring集成mina实现服务端主动推送(包含心跳检测)
- Mina集成到Spring