`

JMS学习笔记(二)——JMS接口描述

    博客分类:
  • JMS
阅读更多

1.    JMS接口描述

JMS 支持两种消息类型PTP 和Pub/Sub,分别称作:PTP Domain 和Pub/Sub Domain,这两种接口都继承统一的JMS Parent 接口,JMS 主要接口如下所示:




1)        ConnectionFactory

是客户机用来创建与JMS提供者的链接的对象。它是受控对象,可以通过JNDI查找。JMS API定义了两种类型的连接工厂。 QueueConnectionFactory 和 TopicConnectionFactory。

2)        Connection

JMS 客户端到JMS Provider 的连接,连接对象是和JMS提供者通信的媒介。这个通信的具体实现依赖于JMS提供者。除了通用的借口,还有基于队列(QueueConnection)和基于主题(TopicConnection)专用接口。

3)        Destination

消息的目的地,目标是受控对象。在JMS中表示一个队列或者一个主题。

4)        Session

一个发送或接收消息的线程,用于创建消息的生产者、消费者和消息。它们都是单线程,能参加事务。有QueueSession和TopicSession。

5)        Message

消息是消息服务器在客户端之间发送的一条条信息。有五种接口,不同的类型消息。

  • StreamMessage -- Java原始值的数据流 
  • MapMessage--一组名/值对 
  • TextMessage--一个字符串对象
  • ObjectMessage--一个序列化的 Java对象
  • BytesMessage--一个未解释字节的数据流。

       消息由以下几部分组成:

消息头(header):JMS消息头包含了许多字段,它们是消息发送后由JMS提供者或消息发送者产生,用来表示消息、设置优先权和失效时间等等,并且为消息确定路由。

属性(property):由消息发送者产生,用来添加删除消息头以外的附加信息。

消息体(body):由消息发送者产生。

6)        MessageProducer

由Session 对象创建的用来发送消息的对象,有QueueSender、TopicPublisher

7)        MessageConsumer

由Session 对象创建的用来接收消息的对象,有QueueReceiver、TopicSubscriber

  • 大小: 29.2 KB
分享到:
评论

相关推荐

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

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

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

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

    Java JDK 6学习笔记——ppt简体版

    Java JDK 6学习笔记——PPT简体版是针对初学者和有经验的开发者们的一份宝贵资源,它深入浅出地介绍了Java编程语言的核心概念和技术。这份笔记以PPT的形式呈现,使得学习过程更加直观易懂,适合课堂教学或自我学习。...

    Java JDK 6学习笔记——ppt

    Java JDK 6学习笔记——PPT简体版是针对初学者和有经验的开发者们的一份宝贵资源,它深入浅出地介绍了Java编程语言的核心概念和技术。这份资料以PPT的形式呈现,使得学习过程更加直观易懂,同时包含了课程中的源代码...

    JBOSS_Esb学习资料

    7. **JMS路由**:《JBoss_ESB学习笔记9——第八个ESB应用JMS_Router.doc》和《JBoss_ESB学习笔记10——第九个ESB应用JMS_Topic.doc》涉及到了JMS(Java Message Service)在ESB中的应用,讲解了如何利用ESB进行消息...

    ActiveMQ学习笔记(二) JMS与Spring

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

    ejb 学习笔记5

    ### 深入解析《ejb学习笔记5》——消息驱动Bean详解 #### 消息驱动Bean概述 消息驱动Bean(MDB,Message Driven Bean)是Enterprise JavaBeans(EJB)框架中的一个重要组成部分,主要用于接收并处理来自消息中间件...

    Jboss-ESB学习笔记.doc

    本篇学习笔记主要围绕 JBoss ESB 的一个基础应用——“Hello World File Action”进行讲解,这个例子展示了如何利用 JBoss ESB 的 File Gateway 功能来监控文件系统变化,并通过 JMS(Java Message Service)消息...

    jdk6.0学习笔记

    ### JDK 6.0 学习笔记精要 #### 一、Java 概览 - **Java 的起源与发展** - Java 最初是由 Sun Microsystems 的 Green Project 开发出来的,最初是为了设计 Star7 应用程序而创建的一种编程语言。 - 名称由来:...

    webservice学习笔记 -- XFrie

    【Web Service学习笔记——XFrie框架详解】 Web Service是一种通过网络进行通信的服务,它允许不同的应用程序之间进行数据交换,跨越了操作系统和编程语言的障碍。XFrie是一个轻量级、高性能的Java Web Service框架...

    全套达内学习笔记(java)

    此外,还可能涉及Java企业级应用开发的相关概念,如JMS(Java消息服务)、JNDI(Java命名和目录接口)等。 【CoreJava.zip】:核心Java是Java编程的基础,可能包括了Java SE(标准版)中的核心概念和技术,如IO流、...

    达内java笔记,精挑细选(达内助教整理)0积分

    本压缩包文件“达内java笔记,精挑细选(达内助教整理)0积分”提供了一份详尽的J2EE学习资料,旨在帮助学习者高效掌握核心知识点。 首先,Java笔记涵盖了基础到高级的Java知识点。Java基础部分包括语法、数据类型...

    Java【分布式】学习笔记01分布式Java应用

    从给定的文件信息来看,标题和描述都指向了“Java分布式学习笔记01分布式Java应用”,这显然是关于Java在分布式环境下的应用和技术的学习资料。虽然提供的部分内容由于格式问题难以直接解析,但我们可以根据标题、...

    韩顺平JSP学习笔记+源代码

    ### 韩顺平JSP学习笔记与源代码解析 #### J2EE的十三种技术(规范) 在韩顺平老师的教学笔记中,首先提到了J2EE平台下的十三种核心技术,这些技术对于理解JSP及其相关的Web开发环境至关重要。 1. **Java数据库...

    spring培训学习笔记

    Spring为各种企业服务API提供了统一的抽象,如JDBC、JMS、JMX等,使得开发者无需直接与这些底层API交互,而是通过Spring的简单API来使用。这提高了代码的可读性和可维护性。 **事务管理**: Spring提供了声明式事务...

    ActiveMQ学习笔记之一--ActiveMQ下载

    **ActiveMQ学习笔记之一——ActiveMQ下载** ActiveMQ是Apache软件基金会开发的一个开源消息中间件,它是基于Java消息服务(JMS)规范的,用于在分布式系统中传递消息。作为一个高性能、可伸缩且可靠的解决方案,...

    ejb培训笔记和源代码

    本资料集包含了ejb培训笔记和源代码,旨在帮助学习者深入理解EJB的工作原理及其在实际项目中的应用。 笔记部分可能涵盖以下关键知识点: 1. **EJB概述**:介绍EJB的历史、版本和基本概念,包括EJB 2.x和EJB 3.x的...

    MLDN_J2EE框架_笔记

    **J2EE框架详解——基于MLDN的学习笔记** J2EE(Java 2 Platform, Enterprise Edition)是Java平台上用于构建企业级应用的框架,它提供了一系列的组件和服务,旨在简化多层分布式应用的开发和部署。这套“MLDN_J2EE...

    最全的java达内笔记

    "最全的java达内笔记"显然是一份集大成的Java学习资料,源自知名的IT培训机构——达内。达内以其系统化的课程和实战导向的教学模式而闻名,这份笔记很可能包含了Java从基础到进阶的全方位知识。 首先,EJB...

Global site tag (gtag.js) - Google Analytics