Java Spring cloud stream RabbitMq-从源代码设置属性
我将SpringCloudStream与RabbitMQ一起使用 我希望能够从源代码而不是从属性文件(正如他们在文档中提到的)配置消息和查询属性 例如,对于RabbitMq的经典Java客户机,我可以执行类似的操作来创建具有我想要的属性的队列:Java Spring cloud stream RabbitMq-从源代码设置属性,java,spring,rabbitmq,spring-cloud,Java,Spring,Rabbitmq,Spring Cloud,我将SpringCloudStream与RabbitMQ一起使用 我希望能够从源代码而不是从属性文件(正如他们在文档中提到的)配置消息和查询属性 例如,对于RabbitMq的经典Java客户机,我可以执行类似的操作来创建具有我想要的属性的队列: //qName, passive, durable, exclusive auto-delete channel.queueDeclare("myQueue", true, false, fals
//qName, passive, durable, exclusive auto-delete
channel.queueDeclare("myQueue", true, false, false, , false , null);
关于如何使用Spring cloud stream实现同样的目标,有什么想法吗?在“application.yml”中,您可以添加所有这些值,下面是示例
spring:
cloud:
stream:
instance-count: 1
bindings:
input:
consumer:
concurrency: 2
maxAttempts: 1
group: geode-sink
destination: jdbc-event-result
binder: rabbit
rabbit:
bindings:
input:
consumer:
autoBindDlq: true
republishToDlq: true
requeueRejected: false
rabbitmq:
username: ur-user-name
password: ur-password
host: rabbitmq-url-replace-here
port: 5672
datasource:
platform: mysql
url: jdbc:mysql-url-replace-here
username: ur-user-name
password: ur-password
driverClassName: com.mysql.jdbc.Driver
datasource:
tomcat:
max-wait: 300
min-idle: 10
max-idle: 100
aggregator:
groupCount: 2
batchSize: 1000
batchTimeout: 1000
更新:
spring:
cloud:
stream:
bindings:
queue_name :
destination: queue_name
group: your_group_name
durable-subscription : true
这将声明一个持久、非删除和非独占的队列。谢谢您的回答,但从我看来,您的回答不包含我想要的信息。我希望能够修改查询和消息属性。例如,如何使查询成为非持久性和非独占性查询。有没有办法从源代码内部而不是从属性文件中实现它?