一个JMS程序的实现大概包括以下几个步骤:
A.创建一个ConnectionFactory对象;
例:
ConnectionFactory connectionFactory;
connectionFactory = new ActiveMQConnectionFactory("tcp://192.168.0.214:61616");
B.创建一个或多个Destination对象;
例:
Queue queue = new ActiveMQQueue("q");
Topic topic = new ActiveMQTopic("t");
C.使用ConnectionFactory来创建一个具有消息转发约束的JMS Connection;
例:
Connection connection = connectionFactory.createConnection();
connection.start();
D.使用Connection来创建一个或多个JMS Session;
例:
Session session = connection.createSession(false,Session.AUTO_ACKNOWLEDGE);
E.使用Session和Destination来创建需要的MessageProducer和MessageConsumer;
例:
//创建消息生产者
MessageProducer producer = session.createProducer(queue);
F.创建消息,例如下面创建一个Map消息
例:
/**
* 创建map消息
*/
MapMessage mapMessage = session.createMapMessage();
mapMessage.setString("Name","Daizi");
mapMessage.setDouble("Value",1234);
mapMessage.setLong("Time",new Date().getTime());
G.开始发送消息。
例:
//开始发送消息
producer.send(mapMessage); /**
* 接收消息
* 当消费者返回信息是,这里有作为消费者了
*/
<!--EndFragment--> MessageConsumer consumer2 = session.createConsumer(topic);
consumer2.setMessageListener(new MessageListener(){
public void onMessage(Message message)
{
try
{
System.out.println(((TextMessage)message).getText());
} catch (JMSException e)
{
e.printStackTrace();
}
}
});
当然这个步骤不是钉死的!
分享到:
相关推荐
传统的使用JMSAPI进行消息传递的实现包括多个步骤,例如JNDI查询队列连接工厂和Queue资源,在实际发送和接收消息前创建一个JMS会话。Spring框架则简化了使用JEE组件(包括JMS)的任务。它提供的模板机制隐藏了典型的...
Tcp服务端与客户端的JAVA实例源代码,一个简单的Java TCP服务器端程序,别外还有一个客户端的程序,两者互相配合可以开发出超多的网络程序,这是最基础的部分。 递归遍历矩阵 1个目标文件,简单! 多人聊天室 3...
Tcp服务端与客户端的JAVA实例源代码,一个简单的Java TCP服务器端程序,别外还有一个客户端的程序,两者互相配合可以开发出超多的网络程序,这是最基础的部分。 递归遍历矩阵 1个目标文件,简单! 多人聊天室 3...
对于客户机,EntityBean是一种持久性对象,它代表一个存储在持久性存储器中的实体的对象视图,或是一个由现有企业应用程序实现的实体。 Session Bean 还可以再细分为 Stateful Session Bean 与 Stateless ...
对于客户机,EntityBean是一种持久性对象,它代表一个存储在持久性存储器中的实体的对象视图,或是一个由现有企业应用程序实现的实体。 Session Bean 还可以再细分为 Stateful Session Bean 与 Stateless Session ...
请写一个java程序实现线程连接池功能? 122 84.13. 编一段代码,实现在控制台输入一组数字后,排序后在控制台输出; 122 84.14. 列出某文件夹下的所有文件; 123 84.15. java调用系统命令实现删除文件的操作; 123 ...
242 实例74 实现一个简单的代理服务器 246 实例75 C/S结构的分布式运算 248 第7章 Java B/S结构编程 253 实例76 简单的Servlet程序 254 实例77 简单的留言簿 256 实例78 JSP+Java Bean的计数器 ...
此存储库每步包含一个提交,以实现完整的自动配置。 有关每个步骤的详细信息,请参阅提交消息。 笔记 请参阅。 会议的幻灯片也。 建立和运行 其中一些步骤需要本地HornetQ安装。 您可以下载HornetQ。 您可以从一...
发布计划1.0 http服务器支持http客户端支持非业务配置多工作流程泊坞窗图像分配添加许可证信息发行说明0.1 A第一个MVP(最低可行产品)可能的功能快速开始多工作流支持和REST级别Kafka支持和编排示例发布到公共工件...
215、写一个方法,实现字符串的反转,如:输入abc,输出cba 53 216、数据类型之间的转换 53 217、如何取得年月日,小时分秒 53 218、如何取得从1970年到现在的毫秒数 53 219、如何格式化日期 53 220、文件和目录(I/...
215、写一个方法,实现字符串的反转,如:输入abc,输出cba 53 216、数据类型之间的转换 53 217、如何取得年月日,小时分秒 53 218、如何取得从1970年到现在的毫秒数 53 219、如何格式化日期 53 220、文件和目录(I/...
10、在weblogic管理制台中对一个应用域(或者说是一个网站,Domain)进行jms及ejb或连接池等相关信息进行配置后,实际保存在什么文件中? 11、说说weblogic中一个Domain的缺省目录结构?比如要将一个简单的helloWorld.jsp...
1、编写一个程序,将a.txt文件中的单词与b.txt文件中的单词交替合并到c.txt文件中,a.txt文件中的单词用回车符分隔,b.txt文件中用回车或空格进行分隔。 61 2、编写一个程序,将d:\java目录下的所有.java文件复制到d...
1、编写一个程序,将a.txt文件中的单词与b.txt文件中的单词交替合并到c.txt文件中,a.txt文件中的单词用回车符分隔,b.txt文件中用回车或空格进行分隔。 61 2、编写一个程序,将d:\java目录下的所有.java文件复制到d...
1、编写一个程序,将a.txt文件中的单词与b.txt文件中的单词交替合并到c.txt文件中,a.txt文件中的单词用回车符分隔,b.txt文件中用回车或空格进行分隔。 61 2、编写一个程序,将d:\java目录下的所有.java文件复制到d...
1、编写一个程序,将a.txt文件中的单词与b.txt文件中的单词交替合并到c.txt文件中,a.txt文件中的单词用回车符分隔,b.txt文件中用回车或空格进行分隔。 61 2、编写一个程序,将d:\java目录下的所有.java文件复制到d...
1、编写一个程序,将a.txt文件中的单词与b.txt文件中的单词交替合并到c.txt文件中,a.txt文件中的单词用回车符分隔,b.txt文件中用回车或空格进行分隔。 61 2、编写一个程序,将d:\java目录下的所有.java文件复制到d...