`
丁树同
  • 浏览: 9661 次
  • 性别: Icon_minigender_1
  • 来自: 济南
社区版块
存档分类
最新评论

Send Message by Spring JMS

 
阅读更多

The JmsTemplate contains many convenience methods to send a message. There are send methods that specify the destination using a javax.jms.Destination object and those that specify the destination using a string for use in a JNDI lookup. The send method that takes no destination argument uses the default destination. Here is an example that sends a message to a queue using the 1.0.2 implementation.

import javax.jms.ConnectionFactory;
import javax.jms.JMSException;
import javax.jms.Message;
import javax.jms.Queue;
import javax.jms.Session;

import org.springframework.jms.core.MessageCreator;
import org.springframework.jms.core.JmsTemplate;

public class JmsQueueSender {

    private JmsTemplate jmsTemplate;
    private Queue queue;

    public void setConnectionFactory(ConnectionFactory cf) {
        this.jmsTemplate = new JmsTemplate(cf, false);
    }

    public void setQueue(Queue queue) {
        this.queue = queue;
    }

    public void simpleSend() {
        this.jmsTemplate.send(this.queue, new MessageCreator() {
            public Message createMessage(Session session) throws JMSException {
              return session.createTextMessage("hello queue world");
            }
        });
    }
}

 This example uses the MessageCreator callback to create a text message from the supplied Session object and the JmsTemplate is constructed by passing a reference to a ConnectionFactory and a boolean specifying the messaging domain. A zero argument constructor and connectionFactory / queue bean properties are provided and can be used for constructing the instance (using a BeanFactory or plain Java code). Alternatively, consider deriving from Spring's JmsGatewaySupport convenience base class, which provides pre-built bean properties for JMS configuration.

The method send(String destinationName, MessageCreator creator) lets you send to a message using the string name of the destination. If these names are registered in JNDI, you should set the destinationResolver property of the template to an instance of JndiDestinationResolver.

If you created the JmsTemplate and specified a default destination, the send(MessageCreator c) sends a message to that destination.

 

From:http://docs.spring.io/spring/docs/3.0.0.RC2/reference/html/ch21s03.html

分享到:
评论

相关推荐

    spring_jms

    Spring JMS(Java Message Service)是Spring框架的一部分,专门用于集成JMS消息传递系统,以实现异步通信和解耦应用程序组件。在这个入门级实例中,我们将探讨如何使用Maven、Spring和ActiveMQ来构建一个简单的...

    spring-jms源码

    MessageTemplate是Spring JMS提供的主要操作消息的模板类,它提供了一系列发送和接收消息的方法,如send、receive等,简化了JMS API的使用。JmsTemplate则是MessageTemplate的扩展,提供了更多的配置选项和操作方法...

    Java网络编程--基于Spring的JMS编程

    5. **JMS模板的使用**:`JmsTemplate`提供了多种发送消息的方法,如`send()`和`convertAndSend()`,这些方法可以用来发送简单或复杂的消息。同时,它还支持从队列或主题接收消息,如`receive()`和`receiveAndConvert...

    JMS整合Spring实例

    <bean id="messageListenerContainer" class="org.springframework.jms.listener.DefaultMessageListenerContainer"> <property name="messageListener" ref="messageListener" /> <bean id="messageListener...

    Spring集成JMS

    在实际应用中,`SpringJMS`可能包含以下示例代码片段: ```xml <bean id="jmsConnectionFactory" class="org.springframework.jms.connection.CachingConnectionFactory"> <!-- 这里配置具体的JMS提供商实现 -->...

    Spring JMS 消息处理-基于JNDI

    3. **消息生产者和消费者**:Spring JMS模板简化了发送和接收消息的过程,通过`jmsTemplate.send()`和`jmsTemplate.receive()`等方法,开发者可以轻松地创建消息生产者和消费者。 4. **消息监听器**:Spring提供了...

    使用Spring JMS轻松实现异步消息传递.pdf

    4. **灵活性**:Spring JMS 提供了多种类和接口,如 `MessageListener` 和 `DefaultMessageListenerContainer`,支持不同的消息消费模式,如同步和异步,满足不同场景需求。 5. **集成友好**:Spring 框架的整体...

    Spring+JMS+消息处理

    Spring JMS框架是Spring项目的一部分,其主要目标是简化Java Message Service (JMS) API的使用,使得开发人员能够更容易地与消息中间件进行交互。通过Spring JMS,开发者可以更加专注于业务逻辑而非底层的消息传递...

    spring-jms-oracle-aq.rar_oracle aq_spring oracle aq_spring oracl

    本文将深入探讨如何在Spring框架中整合Oracle AQ,以便实现高效、可靠的JMS(Java Message Service)通信。 首先,让我们了解Oracle AQ的基本概念。Oracle AQ是Oracle数据库的一部分,它提供了一种存储和转发消息的...

    spring与jms结合实例

    ApplicationContext context = new ClassPathXmlApplicationContext(new String[]{"SpringJms/SpringJms.xml"}); SpringPublisher publisher = (SpringPublisher) context.getBean("springPublisher"); publisher...

    Spring整合JMS——实现收发消息

    在IT行业中,Spring框架是Java领域最常用的轻量级应用框架之一,而JMS(Java Message Service)则是Java平台上的消息中间件标准,用于应用程序之间的异步通信。本篇文章将详细探讨如何通过Spring框架整合JMS,特别是...

    Spring整合JMS

    Spring整合JMS的知识点详解: 1. JMS简介 Java消息服务(Java Message Service,JMS)是一种Java平台中关于面向消息中间件(MOM)的API,用于在两个应用程序之间,或分布式系统中发送消息,进行异步通信。JMS是一种...

    activemq与spring整合发送jms消息入门实例

    在Java世界中,ActiveMQ和Spring的整合是企业级应用中常见的消息中间件解决方案,用于实现JMS(Java Message Service)消息传递。本教程将深入探讨如何将这两个强大的工具结合在一起,以创建一个简单的发送JMS消息的...

    使用Spring JMS轻松实现异步消息传递.docx

    Spring 框架提供了对 Java 消息服务(Java Message Service, JMS)的支持,使得开发者能够轻松地在应用程序中实现异步消息传递。 JMS 是一个标准接口,用于在分布式环境中交换消息。通过 Spring JMS,我们可以利用...

    spring+jms+activemq

    JMS(Java Message Service)则是一种标准,用于在分布式环境中进行异步消息传递,而ActiveMQ则是Apache项目下的一个开源JMS消息中间件,它实现了JMS规范,为应用提供可靠的、高性能的消息传递服务。 本文将深入...

    spring-kms-test源码

    Spring JMS(Java Message Service)是Spring框架中的一个模块,主要用于支持JMS的开发,它提供了一种声明式的方式来处理消息发送和接收,使得开发者可以更加专注于业务逻辑,而非底层的JMS API。而Spring JMS Test...

    Spring JMSTemplate 与 JMS 原生API比较

    标题 "Spring JMSTemplate 与 JMS 原生API比较" 涉及到的是Java消息服务(Java Message Service,JMS)在Spring框架中的使用,特别是Spring提供的JMSTemplate与JMS原生API之间的差异。JMS是一种标准接口,用于在...

    Spring In Action 使用Spring发送和接收JMS消息

    本篇主要探讨如何利用Spring框架来发送和接收Java消息服务(Java Message Service,简称JMS)消息。JMS是一种标准API,用于在分布式环境中进行异步消息传递,它可以提高系统的可伸缩性和可靠性。 首先,我们需要...

    JMS之ActiveMQ与Spring整合源码

    Spring提供了`org.springframework.jms`包,该包下包含了许多用于JMS的抽象类和接口,如`ConnectionFactory`, `MessageListenerContainer`, `JmsTemplate`等,它们极大地简化了JMS的使用。例如,`JmsTemplate`提供...

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

    Spring 提供了对 Java Message Service (JMS) 的支持,这使得开发者可以更轻松地集成消息服务。Spring 的 JMS 支持主要包括以下几个方面: - **JmsTemplate**:Spring 提供了一个名为 `JmsTemplate` 的类,该类封装...

Global site tag (gtag.js) - Google Analytics