`
xpenxpen
  • 浏览: 711067 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

Spring JMS 整合Tomcat和ActiveMQ

    博客分类:
  • MQ
jms 
阅读更多
1.Active MQ安装配置

1.1.下载并解压Active MQ
1.2.双击bin/activemq.bat启动Active MQ
1.3.浏览器输入http://localhost:8161/admin/ ,可以图形化界面管理activemq
1.4.点击Queue,新建一个队列名字叫TestQueue1



2.在Eclipse里面配置Tomcat的context.xml,这样Spring就能以JNDI方式访问ActiveMQ了



加入以下代码
	<Resource name="jms/ConnectionFactory"
        auth="Container"
        type="org.apache.activemq.ActiveMQConnectionFactory"
        description="JMS Connection Factory"
        factory="org.apache.activemq.jndi.JNDIReferenceFactory"
        brokerURL="tcp://localhost:61616"
        brokerName="LocalActiveMQBroker" />
    
    <Resource name="jms/Queue"
        auth="Container"
        type="org.apache.activemq.command.ActiveMQQueue"
        description="my Queue"
        factory="org.apache.activemq.jndi.JNDIReferenceFactory"
        physicalName="TestQueue1" />


3.导入以下Jar包
activemq-all-5.4.1.jar
commons-logging-1.1.1.jar
javax.jms_1.1.1.jar
spring.asm-3.0.0.RELEASE.jar
spring.beans-3.0.0.RELEASE.jar
spring.context-3.0.0.RELEASE.jar
spring.core-3.0.0.RELEASE.jar
spring.expression-3.0.0.RELEASE.jar
spring.jms-3.0.0.RELEASE.jar
spring.transaction-3.0.0.RELEASE.jar
spring.web-3.0.0.RELEASE.jar

4.编写2个类,一个MessageQueueSender发消息,一个MessageQueueReceiver收消息,为了方便测试,我们还写了一个Servlet调用MessageQueueSender,通过JSP来调用Servlet

5.写Spring的配置文件,假设存在这个文件里:jms-activemq.xml

<beans xmlns="http://www.springframework.org/schema/beans"
	xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
	xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-3.0.xsd">

	<!-- Connection factory -->
	<bean id="jmsConnectionFactory" class="org.springframework.jndi.JndiObjectFactoryBean">
		<property name="jndiName" value="java:comp/env/jms/ConnectionFactory"></property>
	</bean>

    <!-- Queue -->
	<bean id="jmsQueue" class="org.springframework.jndi.JndiObjectFactoryBean"
		lazy-init="true">
		<property name="jndiName" value="java:comp/env/jms/Queue"></property>
	</bean>

    <!-- Spring JMS Template -->
	<bean id="jmsTemplate" class="org.springframework.jms.core.JmsTemplate"
		lazy-init="true">
		<property name="connectionFactory" ref="jmsConnectionFactory"></property>
		<property name="defaultDestination" ref="jmsQueue"></property>
	</bean>

    <!-- Sender -->
	<bean id="jmsSender" class="com.xp.MessageQueueSender"
		lazy-init="true">
		<property name="jmsTemplate" ref="jmsTemplate"></property>
	</bean>

    <!-- Receiver -->
	<bean id="jmsReceiver" class="com.xp.MessageQueueReceiver">
	</bean>

    <!-- Message Listener -->
	<bean id="listenerContainer"
		class="org.springframework.jms.listener.DefaultMessageListenerContainer">
		<property name="connectionFactory" ref="jmsConnectionFactory"></property>
		<property name="destination" ref="jmsQueue"></property>
		<property name="messageListener" ref="jmsReceiver"></property>
		<property name="autoStartup" value="true" />
	</bean>

</beans>


6.启动tomcat测试看效果

6.1.浏览器输入http://localhost:8080/JMSTest/,随便输入消息比如"Hello",点击submit



6.2.可在控制台看到Hello的信息,表明发送和接受者都已经OK



6.3.还可以在ActiveMQ管理台创建一条消息,点击"Send To"



随便打入一点消息



6.4.可在控制台看到接受者能收到此消息



附件是eclipse工程代码
  • 大小: 24.5 KB
  • 大小: 14.3 KB
  • 大小: 11 KB
  • 大小: 63.8 KB
  • 大小: 27.9 KB
  • 大小: 56.7 KB
  • 大小: 65.9 KB
分享到:
评论
2 楼 xpenxpen 2012-05-03  
emilyzhanghong 写道
你好,,请问下,,能不能就在加载spring的时候就启动了MQ,而不需要去启动activeMQ.bat.

这个貌似没必要吧。一般MQ都会单独部署在一台机器上的,(和spring一般不部署在一台机器)。这台机器是一直开着的。而启动bat和是不是activeMQ没关系呀,你可以找一下java如何调用bat的方法。
1 楼 emilyzhanghong 2012-05-03  
你好,,请问下,,能不能就在加载spring的时候就启动了MQ,而不需要去启动activeMQ.bat.

相关推荐

    Spring+JMS+ActiveMQ+Tomcat实现消息服务的demo

    基于Spring+JMS+ActiveMQ+Tomcat,我使用的版本情况如下所示:Spring 3.2.0,ActiveMQ 5.4.3,Tomcat 6.0.43。本例通过详细的说明和注释,实现消息服务的基本功能:发送与接收。Spring对JMS提供了很好的支持,可以...

    Apache ActiveMQ教程 JMS 整合Tomcat

    ### Apache ActiveMQ与JMS整合Tomcat:深入解析与实践 #### 一、Apache ActiveMQ:强大而灵活的开源消息中间件 Apache ActiveMQ作为一款成熟的开源消息中间件,不仅遵循了JMS 1.1规范,还兼容J2EE 1.4以上的标准,...

    Spring+JMS+ActiveMQ+Tomcat jar下载

    Spring、JMS、ActiveMQ和Tomcat是Java开发中常用的技术组件,它们分别扮演着不同的角色,构建出高效的企业级消息通信系统。本教程将详细阐述这些技术的使用及其相互结合的方式。 首先,Spring是一个开源的Java应用...

    基于Spring+JMS+ActiveMQ+Tomcat整合

    基于Spring+JMS+ActiveMQ+Tomcat,做一个Spring4.1.0和ActiveMQ5.11.1整合实例,实现了Point-To-Point的异步队列消息和PUB/SUB(发布/订阅)模型,简单实例,不包含任何业务。

    基于Spring+JMS+ActiveMQ+Tomcat的整合ActiveMQSpringDemo实例源码.zip

    基于Spring+JMS+ActiveMQ+Tomcat的整合ActiveMQSpringDemo实例源码,此实例基于Spring+JMS+ActiveMQ+Tomcat,注解的完整实例,包含jar包,可供学习及设计参考。

    Spring和ActiveMQ的整合实例源码

    10. **Tomcat服务器**:Tomcat是一个流行的Java Web服务器,它可以部署和运行使用Spring和ActiveMQ的Web应用程序。 通过上述知识点,我们可以理解如何在Spring环境中利用ActiveMQ进行消息传递,实现高并发、解耦的...

    springboot整合mybatis+activemq(activemq可以去官网下载 )

    总结来说,Spring Boot、MyBatis和ActiveMQ的整合为开发者提供了一个强大的工具集,可以轻松地构建出高性能、高可用性的企业级应用。通过合理的配置和代码设计,我们可以充分利用这些组件的优势,实现灵活、可扩展的...

    Spring+JMS+ActiveMQ+Tomcat DOME

    在Tomcat的conf/context.xml中的元素里面加上如下配置: auth="Container" type="org.apache.activemq.ActiveMQConnectionFactory" description="JMS Connection Factory" factory="org.apache.activemq....

    SpringActiveMQ入门示例

    然后,创建一个新的Maven Web项目,并在`pom.xml`文件中添加ActiveMQ和Spring相关的依赖。通常,你需要包含`spring-context`、`spring-jms`和`activemq-client`等依赖。 接下来,配置Spring的XML配置文件(如`...

    spring2 activemq5 tomcat6构建jms

    标题“spring2 ...分析这些文件可以帮助理解如何将Spring、ActiveMQ和Tomcat集成在一起,实现消息传递功能。学习这个例子可以加深对JMS、Spring集成以及Web应用部署的理解,对于提升Java EE开发技能非常有帮助。

    spring jms tomcat 异步消息传递入门实例

    在这个"spring jms tomcat 异步消息传递入门实例"中,我们将探讨如何在Spring框架下利用JMS和Tomcat实现异步消息传递,以提高系统性能和可扩展性。 首先,理解异步消息传递的概念至关重要。在同步通信中,发送方...

    Spring+JMS+ActiveMQ+Tomcat实现消息服务_服务器应用

    ### Spring+JMS+ActiveMQ+Tomcat 实现消息服务 #### 一、技术栈介绍 在本案例中,我们采用的技术栈为Spring 2.5、ActiveMQ 5.4.0 和 Tomcat 6.0.30。这些技术的结合能够有效地构建一个可靠的消息传递系统。 - **...

    Spirng Tomcat ActiveMQ JMS

    从这个项目中,我们可以学习到如何在Spring环境中配置和使用Tomcat,以及如何利用ActiveMQ实现基于JMS的消息传递。此外,还会涉及到如何在Eclipse这样的IDE中管理Java Web项目,以及如何组织和构建应用的源代码。这...

    activemq整合spring完整实例代码(内含所有相关jar包)

    整合ActiveMQ和Spring的过程主要涉及以下几个关键知识点: 1. **Spring配置**:在Spring的配置文件(如`applicationContext.xml`)中,需要引入ActiveMQ的相关bean。这些bean包括`ConnectionFactory`(连接工厂)、...

    ActiveMq-JMS简单实例使用tomcat.doc

    在本文中,我们将探讨如何在Tomcat服务器上设置和使用ActiveMQ的简单实例。 **一、ActiveMQ的特点与优势** 1. **遵循JMS1.1规范**,兼容J2EE1.4及以上版本。 2. **跨平台**,可以在任何JVM和大多数Web容器中运行,...

    ActiveMq-JMS简单实例使用tomcat.pdf

    在整合ActiveMQ与Tomcat的过程中,首先需要将ActiveMQ lib目录下的五个关键JAR包(activemq-core-5.1.0.jar、activemq-web-5.1.0.jar、geronimo-j2ee-management_1.0_spec-1.0.jar、geronimo-jms_1.1_spec-1.1.1.jar...

    Spring和ActiveMQ的整合实例源码ActiveMQSpringDemo.zip

    6. **依赖管理**:源码中包含了必要的jar包,如Spring的相关库、JMS API和ActiveMQ客户端库,这些都是整合所需的基础组件。`.classpath`和`.project`文件用于IDE(如Eclipse)识别项目的构建路径和设置。 7. **部署...

    ActiveMQ+Camel+Spring+jms Demo(一)

    在本项目中,“ActiveMQ+Camel+Spring+jms Demo(一)”是一个结合了四个关键技术的示例,旨在展示如何构建一个基于消息中间件的分布式应用程序。这四个技术分别是ActiveMQ、Apache Camel、Spring框架以及Java消息...

    Spring集成ActiveMQ配置

    在配置了ActiveMQ的环境中,我们可以在Tomcat中启动和运行Spring应用,使其能够与ActiveMQ服务器交互。 综上所述,Spring集成ActiveMQ提供了一种强大的异步处理机制,能够显著提高系统的可扩展性和响应性。通过理解...

Global site tag (gtag.js) - Google Analytics