spring - 如何在 Spring Camel ActiveMQ 配置中提供用户名密码
问题描述
我正在创建以下 bean ,属性文件具有以下属性
- activemq.broker-url=ssl://myamqdomain.com:61617
- activemq.broker-user=user
- activemq.broker-pwd=pwd
但是当我检查connectionFactory时,我发现 url 很好,但包含用户名和密码=
为什么会这样?
我发现的解决方法是在 URL 本身中我包含了它正在工作的用户名和密码
@Bean
public JmsTransactionManager creatUeJmsTransactionManager(final ConnectionFactory connectionFactory) {
JmsTransactionManager jmsTransactionManager = new JmsTransactionManager();
jmsTransactionManager.setConnectionFactory(connectionFactory);
return jmsTransactionManager;
}
解决方案
如前所述,spring-boot 文档提到只需在您的 中声明以下属性application.properties
:
spring.activemq.user=admin
spring.activemq.password=secret
# mentioning the broker-url for a working sample
spring.activemq.broker-url=ssl://myamqdomain.com:61617
或者,如果你有一个application.yml
文件,你可以像这样声明它们:
spring:
activemq:
brooker-url: ssl://myamqdomain.com:61617
user: admin
password: secret
无论您选择哪种方式,这应该可以解决您的问题。
请记住,spring-boot
您并不需要像框架为您那样声明 bean,在某些特殊情况下,例如连接到两个代理,您需要声明一个@Configuration
bean,但对于简单的用例似乎并非如此像你的。
推荐阅读
- jenkins - Jenkins/Groovy- Job DSL 插件 - git() vs git{}
- reactjs - 通过状态对象获取道具
- python - Docker 上的 Django 正在启动,但浏览器给出空响应
- r - 在 R 中创建更准确的线性回归模型
- pandas - 当我尝试将日期从 Pandas 传递到条形图竞赛模块时出现错误
- mysql - 从一个表中获取行数,其中另一个表中的至少一个相关项与条件匹配
- javascript - 了解 setTimeout 及其在 JavaScript Promises 中的实现
- office-js - Word Web 加载项仅在清理缓存后才有效
- javascript - 如何在映射反应中使用 createdAt 对数组进行排序?
- r - 提取以下单个单词的字符: