JMS连接WMQ及收发消息
2013-07-11 18:06
357 查看
因为对JMS的了解也只算入门级,有些概念也很模糊,不过,卤煮会尽可能去介绍的。另外,sample code都调试过可以跑。
1.神马是JMS?
jms即Java消息服务(Java Message Service)应用程序接口是一个Java平台中关于面向消息中间件(MOM)的API,用于在两个应用程序之间,或分布式系统中发送消息,进行异步通信。Java消息服务是一个与具体平台无关的API,绝大多数MOM提供商都对JMS提供支持。——摘自百度百科
2.JMS组成要素
JMS提供者,JMS客户,JMS生产者,JMS消费者,JMS队列和JMS主题。具体啥意思,还是参考百度百科吧,不过,概念讲起来也木有啥意思,还会把人绕晕。多跑几次sample,回来再看概念可能更清楚些哈。另,博文中的JMS提供者以IBM 的WebSphere MQ为例。
3.JMS模型
JMS模型定义一组可供 Java™ 应用程序用于执行消息传递操作的接口。
以下列表概括了主要的JMS接口:
Destination:Destination 对象是应用程序将消息发往的位置和/或应用程序从其接收消息的源。
ConnectionFactory:ConnectionFactory 对象包括连接的一组配置属性。应用程序使用连接工厂来创建连接。
Connection:Connection 对象包括应用程序与消息传递服务器的活动连接。应用程序使用连接来创建会话。
Session:Session 对象是用于发送和接收消息的单个线程上下文。应用程序使用会话来创建消息、消息生产者和消息使用者。会话是事务性或非事务性会话。
Message:Message 对象包括应用程序发送或接收的消息。
MessageProducer:应用程序使用消息生产者将消息发送到目标。
MessageConsumer:应用程序使用消息使用者来接收已发送到目标的消息。
下图是这些对象之间的关系(摘自IBM Info Center)其实,IBM info center中资料多多的呀。
View Code
好了,就介绍到这里了。Happy ending~~~
1.神马是JMS?
jms即Java消息服务(Java Message Service)应用程序接口是一个Java平台中关于面向消息中间件(MOM)的API,用于在两个应用程序之间,或分布式系统中发送消息,进行异步通信。Java消息服务是一个与具体平台无关的API,绝大多数MOM提供商都对JMS提供支持。——摘自百度百科
2.JMS组成要素
JMS提供者,JMS客户,JMS生产者,JMS消费者,JMS队列和JMS主题。具体啥意思,还是参考百度百科吧,不过,概念讲起来也木有啥意思,还会把人绕晕。多跑几次sample,回来再看概念可能更清楚些哈。另,博文中的JMS提供者以IBM 的WebSphere MQ为例。
3.JMS模型
JMS模型定义一组可供 Java™ 应用程序用于执行消息传递操作的接口。
以下列表概括了主要的JMS接口:
Destination:Destination 对象是应用程序将消息发往的位置和/或应用程序从其接收消息的源。
ConnectionFactory:ConnectionFactory 对象包括连接的一组配置属性。应用程序使用连接工厂来创建连接。
Connection:Connection 对象包括应用程序与消息传递服务器的活动连接。应用程序使用连接来创建会话。
Session:Session 对象是用于发送和接收消息的单个线程上下文。应用程序使用会话来创建消息、消息生产者和消息使用者。会话是事务性或非事务性会话。
Message:Message 对象包括应用程序发送或接收的消息。
MessageProducer:应用程序使用消息生产者将消息发送到目标。
MessageConsumer:应用程序使用消息使用者来接收已发送到目标的消息。
下图是这些对象之间的关系(摘自IBM Info Center)其实,IBM info center中资料多多的呀。
package com.demo; import java.util.Hashtable; import javax.jms.*; import javax.naming.*; public class Tester { public static void main(String[] args) { send(); } public static void send() { try { Hashtable<String, String> environment = new Hashtable<String, String>(); //刚才建的初始上下文哈 environment.put(Context.INITIAL_CONTEXT_FACTORY, "com.sun.jndi.fscontext.RefFSContextFactory"); environment.put(Context.PROVIDER_URL, "file:/D:/JNDI-Directory"); InitialContext initContext = new InitialContext(environment); //创建的连接工厂哈 ConnectionFactory factory = (ConnectionFactory) initContext .lookup("TestQM_Q"); //创建的目标哈 Destination destination = (Destination) initContext .lookup("TestQueue"); initContext.close(); Connection connection = factory.createConnection(); Session session = connection.createSession(false, Session.AUTO_ACKNOWLEDGE); MessageProducer sender = session.createProducer(destination); // Send messages TextMessage message = session .createTextMessage("hello, this is my first jms sample code~~~"); //记住,message并不是send到“TestQueue”里面去了,而是send到WMQ上与“TestQueue”关联的那个queue里面去了 sender.send(message); session.close(); connection.close(); } catch (Exception e) { e.printStackTrace(); } } }
View Code
好了,就介绍到这里了。Happy ending~~~
相关文章推荐
- 异步消息总线hornetq学习-03客户端连接hornet进行jms消息的收发-非jndi方式连接
- 异步消息总线hornetq学习-03客户端连接hornet进行jms消息的收发-非jndi方式连接
- 异步消息总线hornetq学习-02客户端连接hornet进行jms消息的收发-jndi方式连接
- Android studio使用smack连接xmpp服务器收发消息
- JMS与Spring之二(用message listener container异步收发消息)
- python通过Pykafka库来连接kafka并收发消息
- Phone与Rild连接过程及消息收发
- MINA客户端建立连接,收发消息
- MQ Client(only)连接MQ Server收发消息配置 【转】
- ActiveMQ学习笔记(5)——使用Spring JMS收发消息
- JMS与Spring之二(用message listener container异步收发消息)
- web activeMq连接池实现JMS消息发送连接管理
- 深入浅出JMS(七)--使用Spring JMS收发消息
- ActiveMQ学习笔记(五)——使用Spring JMS收发消息
- java消息中间件之二:spring集成JMS连接ActiveMQ
- JMS与Spring之一(用JmsTemplate同步收发消息) --转
- JMS与Spring之一(用JmsTemplate同步收发消息)
- Spring+JMS 队列模式 收发消息
- JMS与Spring之二(用message listener container异步收发消息)
- 使用Spring JMS收发消息