`
xiongzhenhui
  • 浏览: 209730 次
  • 性别: Icon_minigender_1
  • 来自: 厦门
社区版块
存档分类
最新评论

Spring JMS基础学习

    博客分类:
  • jms
 
阅读更多

一、JMS的两种消息种类:
1、点对点模型。一旦消息被某个消费者取走,它就不存在了,正在关注同一队列的其他消费者得不到这个消息。
2、订阅模型。一旦某个消息被发布,正在关注同一队列的所有消费者都可以得到这个消息。

二、发送JMS消息
1、使用模板,org.springframework.jms.core.JmsTemplate类的实例。
2、发送消息使用JmsTemplate.send(MessageCreator mc)实现,也可以使用该函数的其他重载。其中消息的创建方法为MessageCreator.createMessage(Session session)。
3、对于POJO一般采用MapMessage作为消息类型。
4、JmsTemplate自身可以设置的属性为connectionFactory和defaultDestination。一般这两个属性的对象可以通过JNDI得到。

三、消费JMS消息
1、同样使用模板,org.springframework.jms.core.JmsTemplate类的实例。
2、接收消息使用JmsTemplate.receive(String destinationName)实现,也可以使用该函数的其他重载。
3、默认情况下接收消息并消费消息(一般是把消息转换成对应的POJO实现业务逻辑)是同步的,为了避免接收消息阻塞,可设置JmsTemplate的receiveTimeout属性(毫秒)。
4、发送和消费消息的过程中,手工转换会造成代码的重复,可以给JmsTemplate的配置一个消息转换器,对应属性为messageConverter,实现类需要实现org.springframework.jms.support.converter.MessageConverter接口。Spring自己提供了一个该接口的实现类:org.springframework.jms.support.converter.SimpleMessageConverter。
5、经过消息转换器的配置,发送和接收消息大大简化:JmsTemplate.convertAndSend(yourObject)和JmsTemplate.receiveAndConvert(destQueueName)。

分享到:
评论

相关推荐

    jms整合spring工程

    1. **JMS基础概念** - **消息**:在JMS中,消息是数据传输的基本单位,包含要传递的信息。 - **消息队列(Message Queue)**:存储消息的临时容器,确保消息被正确地发送和接收。 - **生产者(Producer)**:创建...

    ActiveMQ学习笔记(二) JMS与Spring

    1. **JMS基础概念** - **消息模型**:JMS定义了两种基本的消息模型——点对点(Queue)和发布/订阅(Topic)。点对点模式下,消息由一个生产者发送到队列,一个消费者接收;发布/订阅模式下,多个消费者可以订阅一...

    Spring基础学习,适合新人

    【Spring基础学习,适合新人】 在Java后端开发领域,Spring框架是一个不可或缺的工具,尤其对于初学者来说,理解并掌握Spring的基本概念和技术是至关重要的。Spring以其控制反转(IoC)和面向切面编程(AOP)为核心...

    jms+activeMq+spring学习简单例子

    1. **JMS基础**:JMS允许应用程序创建、发送、接收和阅读消息。它定义了两种消息模型:点对点(Queue)和发布/订阅(Topic)。在点对点模型中,每个消息只被一个消费者接收;而在发布/订阅模型中,消息可以被多个...

    spring-kms-test源码

    这个类为测试场景提供了基础的JMS模板和容器配置,它继承自`AbstractMessageListenerContainerTestSupport`,包含了创建、发送和接收消息的基本功能。通过这些功能,我们可以模拟真实的JMS环境,测试消息的发送与...

    spring学习文档

    本文档记录了学习 Spring 的过程,包括 Spring 的基础知识、Spring AOP、Spring 事务管理等。 一、Spring 简介 Spring 是一个开源的、轻量级的Java企业级应用程序开发框架,由Rod Johnson创建。Spring 的目标是...

    springcoud的java基础篇学习资料

    在Spring Cloud的学习过程中,Java基础知识是必不可少的一部分。Java作为Spring Cloud的基础语言,其核心概念和技术对理解Spring Cloud的实现机制至关重要。以下将详细介绍Java在Spring Cloud中的应用以及相关的知识...

    Spring学习总结笔记

    本篇笔记将详细讲解Spring框架的基础知识,包括其模块结构、配置文件的建立、配置文件的加载以及依赖注入的多种方式。 1. **Spring的模块结构** Spring框架由多个模块组成,主要包括: - **Core Container**:...

    spring 课程学习PPT

    Spring框架是Java开发中的核心组件,它为构建企业级应用提供了全面的解决方案。...通过深入学习这个课程,开发者可以掌握Spring框架的精髓,提高开发效率,并为构建高质量的Java应用打下坚实基础。

    spring-data的学习笔记

    2. **`PagingAndSortingRepository, ID extends Serializable>`**:在`CrudRepository`的基础上增加了分页和排序的支持。 3. **`JpaRepository, ID extends Serializable>`**:继承自`PagingAndSortingRepository`,...

    spring 学习总结

    Spring 学习总结 Spring 是一个广泛应用于企业级 Java 应用程序的开源框架,提供了一个灵活的、可扩展的、可维护的架构。Spring 框架主要分为七个模块:Core Container、AOP、ORM、Web、Web Services、JMS 和 Test...

    2024 Spring学习文档全套

    ### Spring框架核心概念与应用详解 #### Spring框架简介 Spring框架是Java开发领域中...通过上述学习路径,您将能够系统地掌握Spring框架的基础知识及其高级特性,为开发高质量的Java企业级应用程序打下坚实的基础。

    官方原版源码spring-framework-5.0.10.RELEASE.zip

    1. **依赖注入(Dependency Injection, DI)**:这是Spring最基础也最重要的特性,它允许开发者在运行时通过配置来管理对象之间的依赖关系,从而降低耦合度,提高代码的可测试性和可维护性。 2. **面向切面编程...

    Spring的基础知识.pptx

    【Spring基础知识】 Spring是一个广泛使用的Java企业级应用程序框架,主要设计目的是降低模块间的耦合度...通过以上内容的学习,开发者可以掌握Spring的基本知识和实际应用,为构建高效的Java EE应用程序打下坚实基础。

    jee、spring、spring mvc、mybatis 学习(十)

    在本篇博客“JEE、Spring、Spring MVC、MyBatis 学习(十)”中,作者深入探讨了这四个关键的Java企业级开发技术,它们是构建现代Web应用程序的基础。下面将对这些技术进行详细阐述。 1. JEE(Java Enterprise ...

    ActiveMQ+Camel+Spring+jms Demo(一)

    在本示例中,JMS是Camel和ActiveMQ交互的基础,使得消息的发送和接收变得标准化和可靠。 项目中的“camel-example-activemq-tomcat”可能是一个包含了Tomcat服务器、Camel配置、Spring配置以及相关的Java代码的示例...

    Spring 2.0学习文档 和Spring API文档

    2. **核心容器**:这部分详细阐述了Bean工厂和ApplicationContext,这是Spring的基础,用于管理对象的生命周期和依赖注入。 3. **AOP(面向切面编程)**:介绍了Spring对切面编程的支持,包括定义通知、配置切面...

    spring 基础入门 经典

    Spring是一个广泛使用的Java平台,它提供了全面的编程和配置模型。...随着对Spring技术的不断深入学习,开发者可以更有效地解决实际开发中的问题,利用Spring提供的工具来构建高质量和高效率的企业级应用。

    java学习之spring2.0

    - **JMS和JavaMail支持**:Spring提供了对Java消息服务(JMS)和邮件服务的接口,方便开发者处理异步通信和邮件发送。 综上,Spring 2.0不仅是一个强大的框架,也是构建现代Java应用的重要基石。它的全面性和灵活...

    spring5 框架 中文文档_spring-framework-5-doc-cn.zip

    综上,这份Spring5中文文档将涵盖Spring的核心概念、模块、新特性以及实际应用,对于学习和掌握Spring5框架的开发者来说是一份宝贵的资源。通过深入阅读和实践,可以提升开发效率,编写出更加健壮和灵活的Java后端...

Global site tag (gtag.js) - Google Analytics