`

IBM MQ demo

 
阅读更多

 

1.创建factory

 

< amq:connectionFactory id="jmsFactory" brokerURL ="failover:(tcp://localhost:61616)" />

 

2.创建队列

 

<amq:queue name="user_registerInformation" physicalName "union.user.registerInformation.queue"></amq:queue >

 

3.创建发送方

 

<bean id ="userRegisterInformationMessageProducer" class="com.UserRegisterInformationMessageProducer" >

<property name="jmsTemplate" ref="jmsTemplate" ></property>

<property name="destination" ref="user_registerInformation" ></property>

</bean >

 

<bean id ="jmsTemplate" class="org.springframework.jms.core.JmsTemplate" >

<property name ="connectionFactory" >

<bean class="org.springframework.jms.connection.SingleConnectionFactory" >

<property name ="targetConnectionFactory" ref="jmsFactory" />

</bean>

</property>

<!-- 增加默认目的地 -->

<property name ="defaultDestination" ref="user_registerInformation" />

</bean>

 

4.创建接收方

 

<bean id ="jmsTransactionManager"

             class="org.springframework.jms.connection.JmsTransactionManager" >

<property name ="connectionFactory" ref="jmsFactory" />

</bean>

<bean id="userRegisterInformationMessageConsumer" class ="com.UserRegisterInformationMessageConsumer" />

 

<!--注册 监听器 -->

<bean class="org.springframework.jms.listener.DefaultMessageListenerContainer" >

<property name ="connectionFactory" ref="jmsFactory" />

<!-- 消息队列来源 -->

<property name ="destination" ref="user_registerInformation" />

<!-- 监听类 -->

<property name ="messageListener" ref="userRegisterInformationMessageConsumer" />

<property name ="sessionTransacted" value="true" /> <!-- 本地事务 -->

<property name ="transactionManager" ref="jmsTransactionManager" /><!-- 数据库-->

<property name ="concurrentConsumers" value="1" ></property>

<property name ="maxConcurrentConsumers" value="10" ></property>

</bean>

 

5.实现类:

public class UserRegisterInformationMessageProducer {

 

       private JmsTemplate jmsTemplate ;

 

       private Destination destination ;

       public void sendMessage() {

             jmsTemplate.send(new MessageCreator() {

                   public Message createMessage(Session session) throws JMSException {

                        MapMessage mm = session. createMapMessage();

                        mm. setString("name", "张三");

                        mm. setString("accountActivationCode", "工");

                        mm. setString("email", "472218316@qq.com");

                         return mm;

                  }

            });

      }

       public static void main(String[] args) {

              ApplicationContext applicationContext = new ClassPathXmlApplicationContext(new String[]{"./applicationContext.xml" ,"./applicationContext-jms.xml" });

              UserRegisterInformationMessageProducer userRegisterInformationMessageProducer = (UserRegisterInformationMessageProducer) applicationContext.getBean("userRegisterInformationMessageProducer" );

              userRegisterInformationMessageProducer.sendMessage();

              System. out.println("成功发送了一条JMS消息" );

      }

 

       public JmsTemplate getJmsTemplate() {

             return jmsTemplate ;

      }

 

       public void setJmsTemplate(JmsTemplate jmsTemplate) {

             this.jmsTemplate = jmsTemplate;

      }

 

       public Destination getDestination() {

             return destination ;

      }

 

       public void setDestination(Destination destination) {

             this.destination = destination;

      }

}

 

 

public class UserRegisterInformationMessageConsumer implements MessageListener {

 

       public void onMessage(Message message) {

             // TODO Auto-generated method stub

            MapMessage mm = (MapMessage) message;

             try {

                  System. out.println("开始接收信息:" );

                  String username = mm.getString( "name");

                  String accountActivationCode = mm.getString("accountActivationCode" );

                  String email = mm.getString( "email");

                  System. out.println("name:" +username);

                  System. out.println("email:" +email);

                   try {

                         Thread.sleep(5*1000);

                  } catch (InterruptedException e) {

                        e.printStackTrace();

                  }

            } catch (JMSException e) {

                  e.printStackTrace();

            }

      }

 

}

分享到:
评论

相关推荐

    IBM MQ Demo

    这个“IBM MQ Demo”是一个简单的示例,用于演示如何将消息放入IBM MQ队列中,这对于理解和学习如何与IBM MQ交互非常有帮助。 首先,我们来看一下提供的文件列表: 1. **Run.bat**:这是一个批处理文件,通常用于...

    IBM MQ JAVA DEMO

    此“IBM MQ JAVA DEMO”是针对Java开发人员的一个示例,用于演示如何在IBM MQ平台上使用Java API进行消息队列的操作。 首先,我们要了解IBM MQ的基础概念。消息队列是一种异步通信机制,它将数据封装到消息中,然后...

    Spring链接IBM MQ Demo

    这个Demo项目展示了如何在Spring应用中配置和使用IBM MQ 7.5版本,确保了其兼容性和有效性。 首先,我们需要理解Spring框架的核心概念。Spring是一个开源的应用框架,它提供了一个全面的编程和配置模型,用于创建...

    IBM-MQ项目DEMO和Jar包.zip

    此“IBM-MQ项目DEMO和Jar包.zip”压缩包显然包含了与IBM MQ相关的示例代码和必要的JAR库文件,用于帮助开发者理解和使用IBM MQ。 首先,让我们来详细探讨IBM MQ的核心概念和技术特性: 1. **消息中间件**:IBM MQ...

    java IBM MQ 7.5.0 生产者和消费者实例

    Java IBM MQ 7.5.0 是IBM提供的消息中间件,用于在分布式系统中可靠地传输数据。MQ(Message Queue)允许应用程序通过消息传递进行通信,而不是直接调用彼此,从而提高了系统的可扩展性和解耦性。MQTT(Message ...

    JAVA连接IBM MQ代码

    在提供的`mq_demo3`压缩包中,可能包含了一个简单的Java示例,演示了如何连接IBM MQ并执行基本的PUT和GET操作。你可以参考这个示例来理解和学习如何在实际项目中应用这些知识。 总之,Java连接IBM MQ涉及配置环境、...

    SpringBoot 集成 IBMMQ 源码 demo

    SpringBoot 集成 IBMMQ 源码 demo,实现两个服务之间的 IBMMQ 消息接收与发送。

    java连接mq的demo

    Java连接IBM MQ(WebSphere MQ)的Demo是一个典型的示例,用于展示如何在Java应用程序中与MQ消息中间件进行通信。IBM MQ是一个高效、可靠的消息传递系统,它允许分布式应用程序通过消息传递方式进行通信,从而解耦...

    IBM MQ V7.5

    IBM Websphere MQ V7.5 简单存取报文demo,包含报头相关操作,需要本地安装IBM Websphere MQ V7.5

    IBM_MQ_JAVA程序例子

    IBM MQ (Message Queue) 是IBM提供的一种企业级的消息中间件,它允许应用程序通过消息传递进行异步通信。在本主题中,我们重点关注IBM MQ与Java的集成,即"IBM_MQ_JAVA程序例子"。 首先,我们要理解的是IBM MQ的...

    IBM—MQ消息分组与分段实验

    IBM MQ(原名WebSphere MQ)是IBM提供的一款企业级的消息中间件,它允许应用程序在不同的网络协议、操作系统和硬件之间可靠地交换信息。在这个"IBM—MQ消息分组与分段实验"中,我们将深入探讨两个关键概念:消息分组...

    mq_demo(java).zip

    在这个“mq_demo(java).zip”压缩包中,我们预计会找到一些使用Java语言开发的IBM MQ测试案例和相关的文档教程,这对于理解和实践IBM MQ在Java环境中的应用非常有帮助。 IBM MQ的核心概念是消息队列,它允许应用...

    mq_demo.rar

    这个“mq_demo.rar”压缩包文件显然包含了有关如何使用IBM MQ的示例代码或配置,帮助用户了解和实践IBM MQ的用法。 IBM MQ的核心概念是消息队列,它作为一个中间缓冲区,接收并存储来自发送方的消息,然后在适当的...

    IBM MQ JAVA UTIL

    MQ JAVA 开发工具 demo 涵盖了所有mq开发方法类

    IBMMQ 7.5.0.2 (IBM WebSphere MQ 7.5.0.2)安装包

    IBMMQ 7.5.0.2 版本,版本通用,安装及 MQ 环境搭建指南:https://blog.csdn.net/demo_yo/article/details/133200033。

    delphi for MQ_2013最新【最全面的demo以及pas】

    本文将围绕"Delphi for MQ 2013最新【最全面的demo以及pas】"这一主题,深入探讨Delphi与IBM MQ的整合,以及如何利用提供的资源进行实践。 一、Delphi与IBM MQ接口 Delphi for MQ SDK提供了Delphi开发者访问MQI...

    TongLINKQ与MQ对比分析报告.doc

    本报告对比分析了两款知名的消息中间件产品——IBM的WebSphere MQ(简称MQ)和北京东方通科技公司的TongLINK/Q。 1. **产品简介** **WebSphere MQ** 是IBM推出的一款旗舰级消息中间件,以其稳定性和安全性著称。...

    SPRING-MVC-MQ-CXF-REST_Demo

    "SPRING-MVC-MQ-CXF-REST_Demo"这个项目很可能是用来演示如何在同一个应用中整合Spring MVC、MQ、CXF和REST技术。项目可能包含了以下部分: 1. Spring MVC配置:展示了如何设置DispatcherServlet、视图解析器以及...

    简单的MQ使用实例,详细解释

    本实例主要围绕IBM的WebSphere MQ展开,通过Delphi编程环境进行界面开发,为初学者提供了一个易懂的MQ应用实例。 【描述】:“从简单的demo中进行了界面开发。初学很有用!” 这个描述表明,这个压缩包中包含了一...

Global site tag (gtag.js) - Google Analytics