深入理解 JMS 聊天应用:原理与代码剖析
1. 聊天应用概述
在开发 JMS 聊天应用时,我们使用的 createSubscriber() 方法采用了三个参数的形式,而非单个参数。这样做是为了设置 noLocal 标志(第三个参数),确保该类发布的消息不会被自身消费。第二个参数用于消息选择器,由于我们未对主题进行过滤,所以该值设为 null 。若使用单参数方法创建订阅者,我们会在控制台看到自己发送的消息。
要运行聊天应用,需一个支持 JNDI 和 JMS 1.1 的 JMS 提供者。为说明代码示例中的细节和配置,我们使用流行的开源 JMS 提供者 ActiveMQ。你需要参考 JMS 供应商的文档,为聊天应用配置 TopicConnectionFactory 和主题。在我们的示例中,分别将它们命名为 TopicCF 和 topic1 。
例如,使用 ActiveMQ 时,可通过在类路径中创建 jndi.properties 文件并设置如下名称来配置:
java.naming.factory.initial = org.apache.activemq.jndi.ActiveMQInitialContextFactory
java.naming.provider.url = tcp://localhost:61616
java.naming.security.principal=syst
超级会员免费看
订阅专栏 解锁全文
27

被折叠的 条评论
为什么被折叠?



