java - 是否可以在没有 JNDI 的情况下将 HornetQ 用作 bean(即使它在某种抽象之后)...?

标签 java jms hornetq jboss-messaging

我最初的问题是尝试发现并嵌入 HornetQ,使其具有最低限度的依赖性。

我想避免的一项是对 JNDI 的需求。我相信应该可以直接定位所有对象,而不是做 jndi 定位器的事情。

我不是 jndi 的粉丝,因为它似乎是一个全局性的垃圾桶,需要跟踪名称,确保它们不会与其他东西发生冲突等等,很多事情在当请记住,良好的抽象使最低限度的公开。

顺便说一句,这不是咆哮,只是一般性的观察......

最佳答案

我在浏览示例特别是 EmbeddedExample.java 时找到了我自己的问题的答案,它说“是的”一个人可以不需要 JNDI..

 // Step 1. Create the Configuration, and set the properties accordingly
     Configuration configuration = new ConfigurationImpl();
     configuration.setPersistenceEnabled(false);
     configuration.setSecurityEnabled(false);
     configuration.getAcceptorConfigurations().add(new TransportConfiguration(InVMAcceptorFactory.class.getName()));

     // Step 2. Create and start the server
     HornetQServer server = HornetQServers.newHornetQServer(configuration);
     server.start();

     // Step 3. As we are not using a JNDI environment we instantiate the objects directly
     ClientSessionFactory sf = HornetQClient.createClientSessionFactory(new TransportConfiguration(InVMConnectorFactory.class.getName()));

     // Step 4. Create a core queue
     ClientSession coreSession = sf.createSession(false, false, false);

关于java - 是否可以在没有 JNDI 的情况下将 HornetQ 用作 bean(即使它在某种抽象之后)...?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4559838/

相关文章:

Java 运行时进程不会 "Grep"

java - 对继承感到困惑,有人可以帮助我吗?

java - JMS AUTO_ACKNOWLEDGE 何时确认?

java - HornetQ:顺序消费分布式队列

java - Maven - 无法解析项目 X 的​​依赖关系

java - 无法捕获异常

java - Oracle glassfish4.1 jms数据库存储

jms - 没有看到我明确设置的消息属性 (Spring/JMS/MQ)

linux - HornetQ 活锁问题

message-queue - HornetQ 核心 API 和 JMS