java的jms
❶ JNDIJNDI与JMS
在软件开发中,消息通信扮演着重要角色,它允许组件间的高效协作。JMS(java Message Service)是一种Java技术,专为Java应用程序设计,旨在支持创建、发送、接收和管理消息。它提供了统一的接口,使得开发人员可以轻松地在应用程序之间传递数据。
在实践中,我们可以看到这样的代码示例:首先,创建一个环境配置(Properties)和初始上下文(InitialContext),然后通过查找名称("TTopicConnectionFactory")获取TopicConnectionFactory实例。
当我们需要处理对象及其属性时,例如一个人的信息,JNDI提供了一种方法。例如,通过getAttributes()方法获取一个人的属性,如姓名、电话、电子邮件和邮政编码,如下面的代码所示:
Attribute attr = directory.getAttributes(personName).get("email");
String email = (String)attr.get();
JNDI还支持通过对象名称或属性查找对象。比如,我们可以搜索特定条件下的对象,如查找所有来自"o=Wiz,c=US"且姓氏为"Fox"的Wiz对象:
foxes = directory.search("o=Wiz,c=US", "sn=Fox", controls);
甚至,对于硬件设备如打印机,JNDI也能派上用场。通过namespace.lookup()方法,可以找到并操作打印机,如下所示:
Printer printer = (Printer)namespace.lookup(printerName);
printer.print(document);
最后,JNDI的命名空间功能允许开发者浏览和管理整个目录,如列出"o=Widget, c=US"下的所有对象:
NamingEnumeration list = namespace.list("o=Widget, c=US");
while (list.hasMore()) {
NameClassPair entry = (NameClassPair)list.next();
display(entry.getName(), entry.getClassName());
}
总的来说,JNDI与JMS结合,为Java应用程序提供了强大的消息管理和对象查找功能,简化了开发流程和资源管理。
(1)java的jms扩展阅读
JNDI(Java Naming and Directory Interface,Java命名和目录接口)是一组在Java应用中访问命名和目录服务的API。命名服务将名称和对象联系起来,使得我们可以用名称访问对象。目录服务是一种命名服务,在这种服务里,对象不但有名称,还有属性。
❷ ‘什么是JMS(Java消息服务)’面试题目
JMS(Java Message Service)是访问消息系统的标准API,它便于消息系统中的Java应用程序进行消息交换,并且通过提供标准的产生、发送、接收消息的接口简化应用的开发。
JMS应用由以下几部分组成:
JMS provider :是一个消息系统,它实现了JMS 接口并提供管理和控制的功能。
JMS clients :是用Java语言写的一些程序和组件,它们产生和使用消息。
Messages :是在JMS clients之间传递的消息的对象。
Administered objects :是由使用JMS clients 的人生成的预选设置好的JMS 对象。有两种这样的对象:destinations和connection factories。
2.JMS基本功能
JMS是用于和面向消息的中间件相互通信的应用程序接口。它既支持点对点(point-to-point)的域,又支持发布/订阅 (publish/subscribe)类型的域,并且提供对下列类型的支持:经认可的消息传递,事务型消息的传递,一致性消息和具有持久性的订阅者支 持。JMS还提供了另一种方式来对您的应用与旧的后台系统相集成。