您的位置:首页 > 编程语言 > Java开发

Spring 整合HornetQ的JMS整合(Jboss服务器)

2016-09-23 18:02 567 查看
<bean id="connectionFactory" class="org.hornetq.jms.client.HornetQJMSConnectionFactory">
<constructor-arg index="0">
<value>false</value>
</constructor-arg>
<constructor-arg index="1">
<array>
<ref bean="transportConfiguration"/>
</array>
</constructor-arg>
</bean>
<bean id="transportConfiguration" class="org.hornetq.api.core.TransportConfiguration">
<constructor-arg index="0">
<value>org.hornetq.core.remoting.impl.netty.NettyConnectorFactory</value>
</constructor-arg>
<constructor-arg index="1">
<map key-type="java.lang.String" value-type="java.lang.Object">
<entry key="host" value="127.0.0.1"></entry>
<entry key="port" value="5445"></entry>
</map>
</constructor-arg>
<constructor-arg index="2">
<value>NettyConnectorFactory</value>
</constructor-arg>
</bean>

<!--  JMS Topic -->
<bean id="chatTopic" class="org.hornetq.jms.client.HornetQTopic">
<constructor-arg value="myTopic"/>
</bean>
<bean id="chatQueue" class="org.hornetq.jms.client.HornetQQueue">
<constructor-arg value="myQueue"/>
</bean>

整体上的配置就是上面的内容。需要说明的是:NettyConnectorFactory,这个类主要是用来远程连接的,InVMConnectorFactory也可以实现,不过,它需要部署在同一个JVM内,我没有配置成功。

如果需要有用户名跟密码的话,使用<bean id="userCredentialsConnectionFactory" class="org.springframework.jms.connection.UserCredentialsConnectionFactoryAdapter">
<property name="username" value=""/>
<property name="password" value=""/>
<property name="targetConnectionFactory" value="connectionFactory" />
</bean>就可以了。这个是spring在创建session的时候,强制使用带用户名密码的方法来创建session。
其它的,就是一般的用法了,JMSTemplate。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  spring jboss jms HornetQ