Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/348.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java Spring cloud stream RabbitMq-从源代码设置属性_Java_Spring_Rabbitmq_Spring Cloud - Fatal编程技术网

Java Spring cloud stream RabbitMq-从源代码设置属性

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

我将SpringCloudStream与RabbitMQ一起使用

我希望能够从源代码而不是从属性文件(正如他们在文档中提到的)配置消息和查询属性

例如,对于RabbitMq的经典Java客户机,我可以执行类似的操作来创建具有我想要的属性的队列:

                    //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
更新:


在深入挖掘他们的文档后,在@vaquar khan的帮助下,我发现唯一的方法是从您的财产文件中执行

application.yml

spring:
  cloud:
    stream:
      bindings:
        queue_name :
          destination: queue_name
          group: your_group_name 
          durable-subscription : true

这将声明一个持久、非删除和非独占的队列。

谢谢您的回答,但从我看来,您的回答不包含我想要的信息。我希望能够修改查询和消息属性。例如,如何使查询成为非持久性和非独占性查询。有没有办法从源代码内部而不是从属性文件中实现它?