spring_reference/IV. Spring Boot features/30.1.1. HornetQ support.md

16 lines
1.8 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters!

This file contains ambiguous Unicode characters that may be confused with others in your current locale. If your use case is intentional and legitimate, you can safely ignore this warning. Use the Escape button to highlight these characters.

### 30.1.1. HornetQ支持
如果在classpath下发现HornetQSpring Boot会自动配置ConnectionFactory。如果需要代理将会开启一个内嵌的已经自动配置好的代理除非显式设置mode属性。支持的modes有embedded显式声明使用一个内嵌的代理如果该代理在classpath下不可用将导致一个错误native使用netty传输协议连接代理。当后者被配置Spring Boot配置一个连接到一个代理的ConnectionFactory该代理运行在使用默认配置的本地机器上。
**注**如果使用spring-boot-starter-hornetq连接到一个已存在的HornetQ实例所需的依赖都会被提供同时还有用于集成JMS的Spring基础设施。将org.hornetq:hornetq-jms-server添加到你的应用中你就可以使用embedded模式。
HornetQ配置被spring.hornetq.*中的外部配置属性所控制。例如你可能在application.properties声明以下片段
```java
spring.hornetq.mode=native
spring.hornetq.host=192.168.1.210
spring.hornetq.port=9876
```
当内嵌代理时你可以选择是否启用持久化并且列表中的目标都应该是可用的。这些可以通过一个以逗号分割的列表来指定一些默认的配置项或定义org.hornetq.jms.server.config.JMSQueueConfiguration或org.hornetq.jms.server.config.TopicConfiguration类型的bean(s)来配置更高级的队列和主题。具体参考[HornetQProperties](http://github.com/spring-projects/spring-boot/tree/master/spring-boot-autoconfigure/src/main/java/org/springframework/boot/autoconfigure/jms/hornetq/HornetQProperties.java)。
没有涉及JNDI查找目标是通过名字解析的名字即可以使用HornetQ配置中的name属性也可以是配置中提供的names。