`

JMS学习笔记

阅读更多
1、什么是JMS
  JMS指的是Java message service,是JEE技术开发规范的一个重要组成部分,它是一种企业消息处理的规范。它是解耦的,实现了消息生产者和消费者的隔离。

2、JMS的组成架构
  JMS服务器:服务器系统,一般商业应用服务器都可提供JMS服务器支持。
  JMS生产者:负责创建并发送消息的程序组件。
  JMS消费者:负责读取处理消息的程序组件。

3、主要JMS 消息机制模型:PTP和Pub-Sub
  点对点(PTP)模型:每一个消息传递给一个消费者,消息不会同时被多个消费者接收。如果消费者不在线,消息自动持久化(保存到数据库或文件),以保证消息不会丢失。
  发布/订阅(Pub-Sub)模型:每个消息发送到一个消息主题,该主题可以拥有多个订阅者,JMS系统负责将主题的副本分发给所有订阅者。
 
4、JMS version1.0.2两种模型的对象API
                PTP                           Pub-Sub
   连接工厂:    QueueConnectionFactory       TopicConnectionFactory
   JMS连接:     QueueConnection             TopicConnection
   消息会话:    QueueSession                TopicSession
   消息目的:    Queue                               Topic
   消息生产者:  QueueSender                 TopicPublisher
   消息消费者:  QueueReceiver               TopicSubscriber
   发送消息的方法:send(Message msg)            publsh(Message msg)
   接收消息的方法:receive()/receiveNoWait()       receive()/receiveNoWait()

5、JMS version1.1统一域模型API(适用于PTP和Pub-Sub)
   连接工厂:ConnectionFactory
   连接:Connection
   消息会话:Session
   消息目的:Destination
   消息生产者:MessageProducer
   消息消费者:MessageConsumer

6、JMS1.1消除了PTP、Pub-Sub的消息发送和接收步骤:

   消息发送步骤:

  (1)通过JNDI查找来获取JMS连接工厂
  (2)JMS连接工厂创建JMS连接
  (3)JMS连接创建JMS消息会话
  (4)JMS消息会话创建JMS消息生产者
  (5)JMS消息会话创建空的JMS消息
  (6)JMS消息调用自身的方法填充内容
  (7)通过JNDI查找获取JMS消息目的
  (8)消息生产者将消息发送到指定的JMS消息目的
  (9)关闭JMS资源

   消息同步接收步骤:

  (1)通过JNDI查找来获取JMS连接工厂
  (2)JMS连接工厂创建JMS连接
  (3)JMS连接创建JMS消息会话
  (4)通过JNDI查找获取JMS消息目的
  (5)JMS会话指定特定的JMS消息目的来创建一个JMS消息消费者
  (6)JMS消费者接收消息
  (7)关闭JMS资源
  注:异步接收使用消息监听器MessageListener。
7、其他
   消息的优先级设置、消息类型、消息确认的方式、消息选择器、消息的临时目的、事务性session、JTA全局事务、JMS服务器的异常监听和JMS集群这里不做概述。
分享到:
评论

相关推荐

    JMS学习笔记精心总结

    **JMS学习笔记精心总结** Java消息服务(Java Message Service,简称JMS)是Java平台中用于企业级应用间异步通信的一种标准接口。它允许应用程序创建、发送、接收和读取消息,使得应用程序能够在不直接连接的情况下...

    JMS学习笔记(一)——JMS简介安装ActiveMQ

    **JMS学习笔记(一)——JMS简介与ActiveMQ安装** Java消息服务(Java Message Service,简称JMS)是Java平台中用于企业级应用间异步通信的标准接口。它为应用程序提供了一种标准的方式,用来创建、发送、接收和读取...

    jms学习笔记jms学习笔记

    本文主要探讨的是消息中间件(Message-Oriented Middleware,简称MOM),特别是在Java消息服务(Java Message Service,JMS)的学习笔记。 JMS是Java平台上的一个标准API,用于在分布式环境中进行异步消息传递。它...

    JMS相关,教程,例子,学习笔记

    通过阅读**jms学习笔记.docx** 和 **JMS例子.docx**,你可以深入理解JMS的使用方式,获取实践经验。而 **JMS教程.pdf** 和 **基于XML和JMS的异构数据交换集成的研究.pdf** 则提供了理论基础和高级应用场景的讲解,有...

    JavaEE5学习笔记03-JMS介绍与使用

    ### Java Message Service (JMS) 介绍与使用 在深入探讨Java Message Service(JMS)之前,我们首先明确其在Java EE生态系统中的地位。JMS是Java Platform, Enterprise Edition(Java EE)的一部分,用于实现分布式...

    ActiveMQ学习笔记(二) JMS与Spring

    在本篇ActiveMQ学习笔记中,我们将探讨JMS(Java Message Service)与Spring框架的集成。JMS是一种标准API,用于在分布式环境中进行异步消息传递,而Spring框架则为开发人员提供了强大的依赖注入和管理服务的能力。...

    JAVA学习笔记————————

    在深入探讨JAVA学习笔记之前,我们首先理解一下JAVA这一编程语言的重要性。JAVA,由Sun Microsystems公司(现已被Oracle收购)于1995年推出,是一种面向对象的、跨平台的编程语言,以其“一次编写,到处运行”的特性...

    RocketMQ学习笔记 1

    RocketMQ学习笔记 1是关于Apache RocketMQ的学习笔记,涵盖了RocketMQ的基本概念、架构、消息模型、Producer和Consumer的基本概念、JMS规范等知识点。 1. 消息模型 在RocketMQ中,消息模型是指消息的生产、存储和...

    active mq 学习笔记

    ### ActiveMQ学习笔记知识点梳理 #### 一、ActiveMQ简介 **定义:** - **ActiveMQ**是由Apache出品的一款功能强大的开源消息中间件。作为消息队列(Message Queue,简称MQ)的一种,它主要用来在分布式系统之间...

    JProfiler学习笔记

    【JProfiler学习笔记】 JProfiler是一款强大的Java性能分析工具,其直观的图形用户界面使得开发者能够轻松找到性能瓶颈,定位内存泄漏,并解决线程问题。本文将深入介绍JProfiler的主要功能,通过实战案例来帮助...

    javaEE学习笔记

    本学习笔记涵盖了JavaEE的核心技术,帮助学习者深入理解和掌握javaweb的各项技能。 1. **Servlet与JSP** - **Servlet**:Servlet是Java编写的服务器端程序,主要用于扩展服务器的功能。在JavaEE中,Servlet处理...

    JavaEE学习笔记

    ### JavaEE 学习笔记概览 #### 一、JavaEE 概念及发展历程 JavaEE(Java Platform, Enterprise Edition)是Sun Microsystems公司为简化企业级应用开发而提出的一套标准化平台,它提供了构建分布式系统的基本框架和...

    Java-J2EE全部学习笔记 培训结构的学习资料

    这份"Java-J2EE全部学习笔记 培训结构的学习资料"涵盖了从基础到高级的Java编程和J2EE应用开发的知识点,对于想要深入理解Java EE技术的人来说是一份宝贵的资源。 1. **Java基础知识**:这部分可能包括Java语言的...

    软件工程师学习笔记J2EE

    《软件工程师学习笔记J2EE》是一份针对Java企业级应用开发(J2EE)的详尽学习资源,对于想要深入理解和掌握J2EE技术体系的软件工程师来说,具有极高的参考价值。这份笔记不仅全面覆盖了J2EE的基础概念,还深入探讨了...

    J2EE学习笔记 对学习非常有帮助

    **J2EE学习笔记概述** J2EE(Java 2 Platform, Enterprise Edition)是Java平台的一个版本,专门针对企业级应用开发。它提供了一个全面的框架来构建、部署和管理多层、分布式、跨平台的企业应用程序。J2EE学习笔记...

    j2ee学习笔记很好的

    【J2EE学习笔记概述】 J2EE,全称为Java 2 Platform, Enterprise Edition,是Java平台上用于构建企业级应用的框架。它提供了一个统一的标准和可扩展的平台,允许开发人员创建分布式、多层的企业应用程序。J2EE的...

Global site tag (gtag.js) - Google Analytics