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還提供了另一種方式來對您的應用與舊的後台系統相集成。