概述
提供代码例子,演示如何使用OpenJMS administration API.
2.准备工作
使用API之前,首先要创建一个JmsAdminServerIFC实例。这要用到AdminConnectionFactory类。
import org.exolab.jms.administration.AdminConnectionFactory;
import org.exolab.jms.administration.JmsAdminServerIfc;
String url = "tcp://localhost:3035/";
JmsAdminServerIfc admin = AdminConnectionFactory.create(url);
如上,url指定了OpenJMS服务路径端口。可以通过查看Connectors文档查看url的详细说明。
如果,服务需要密码就要这样写:
String url = "tcp://localhost:3035/";
String user = "admin";
String password = "openjms";
JmsAdminServerIfc admin = AdminConnectionFactory.create(url, user, password);
注意点:当admin 引用不需要时,应当关闭服务。
admin.close();
列举目的地:
Vector destinations = admin.getAllDestinations();
Iterator iterator = destinations.iterator();
while (iterator.hasNext()) {
Destination destination = (Destination) iterator.next();
if (destination instanceof Queue) {
Queue queue = (Queue) destination;
System.out.println("queue:" + queue.getQueueName());
} else {
Topic topic = (Topic) destination;
System.out.println("topic:" + topic.getTopicName());
}
}
创建目的地,以下两种。
创建Queue:
String queue = "myqueue";
Boolean isQueue = Boolean.TRUE;
if (!admin.addDestination(queue, isQueue)) {
System.err.println("Failed to create queue " + queue);
}
创建Topic:
String topic = "mytopic";
Boolean isQueue = Boolean.FALSE;
if (!admin.addDestination(topic, isQueue)) {
System.err.println("Failed to create topic " + topic);
}
Queue计数
为了知道Queue中可用的消息数,可用一下代码:
String queue = "myqueue";
int count = admin.getQueueMessageCount(queue);
System.out.println("Queue " + queue + " has " + count + " messages");
Topic计数
为了知道Topic中可用的消息数,可用一下代码:
String topic = "mytopic";
String name = "sub1";
int count = admin.getDurableConsumerMessageCount(topic, name);
System.out.println("Subscriber " + name + " has " + count + " messages "
+ "for topic " + topic);
移除目的地
String destination = "myqueue";
if (!admin.removeDestination(destination)) {
System.err.println("Failed to remove destination " + queue);
}
确定目的地是否存在
String destination = "mytopic";
if (admin.destinationExists(destination)) {
System.out.println(destination + " exists");
} else {
System.out.println(destination + " doesn't exist");
}
3.关闭OpenJMS
admin.stopServer();
本文来自CSDN博客,转载请标明出处:http://blog.csdn.net/xnfzr/archive/2008/11/17/3318564.aspx
分享到:
相关推荐
JMS OPENJMS的实现例子JMS OPENJMS的实现例子JMS OPENJMS的实现例子JMS OPENJMS的实现例子
这个是openjms配置说明文档,配置好,就可以运行openjms
全面介绍OpenJMS的特性
闲暇时研究了一下JMS,觉得 openjms 搭建起来非常简单,有兴趣的朋友下回去看一下。
用于jms方面的研究和应用
开源JMS服务器源玛 以及开实例 及可以轻松学到的介绍。
openjms实现jms消息发布于订阅 openjms实现jms消息发布于订阅 openjms实现jms消息发布于订阅 openjms实现jms消息发布于订阅 openjms实现jms消息发布于订阅
JMS初级应用,适合对初学都JMS的人,并有相关的界面,其中的主题模式也可以算得上是一个小小的群聊工具
openJMS jar资源开发
OpenJMS OpenJMS是作业管理系统(JMS)的开源版本,它是用于安置临时工或合同工的企业解决方案。 OpenJMS是备受推崇的JMS2006桌面应用程序的完全重写版本,旨在在简单的本地网络(例如工作组)上运行,并使用了...
此链接内容来源博客:http://blog.csdn.net/a276202460/archive/2009/11/26/4874720.aspx
NULL 博文链接:https://xieruilin.iteye.com/blog/1036677
Java消息服务规范的开源实现,可以以嵌入式或独立模式运行。 它支持TCP,SSL,HTTP,HTTPS和RMI的连接器,并且可以与任何符合JDBC的数据库一起使用。
NULL 博文链接:https://ari.iteye.com/blog/366614
解压openjms-0.7.7-beta-1.zip 然后通过cmd直接start.sh即可,可以看到已经在监听端口。 也可以打开admin.bat 然后通过菜单Actions启动 编译 直接在根目录下进行编译,输入 ant 或者ant -f build.xml ###启动...
jms的应用例子,对您可能有所帮助。 支持一下吧。很好的例子哟
tomcat和消息服务openjms的配置
OpenJMS是一个开源的Java Message Service API 1.0.2 规范的实现,它包含有以下特性: *. 它既支持点到点(point-to-point)(PTP)模型和发布/订阅(Pub/Sub)模型。 *. 支持同步与异步消息发送 *. JDBC持久性...
JMSChat 通过使用JMS API和Java Swing进行简单聊天。 您可以在openJMS zip归档文件中找到引用的库。
JMS简单使用指南.doc 1、OpenJMS 2、iLinkMQ 3、Sun:Java Message Queue