当类路径上存在多个绑定器时,应用程序必须指示要用于每个目标绑定的绑定器。
每个活页夹配置都包含一个文件,该文件是一个简单的属性文件,如以下示例所示:META-INF/spring.binders
rabbit:\
org.springframework.cloud.stream.binder.rabbit.config.RabbitServiceAutoConfiguration
其他提供的活页夹实现(如 Kafka)也存在类似的文件,自定义活页夹实现也应提供它们。
键表示 binder 实现的标识名称,而值是以逗号分隔的配置类列表,每个类包含一个且只有一个 bean 定义类型。org.springframework.cloud.stream.binder.Binder
可以使用属性全局执行活页夹选择(例如,),也可以通过在每个绑定上配置活页夹来单独执行。
例如,从 Kafka 读取并写入 RabbitMQ 的处理器应用程序(具有分别命名为 和 for read 和 write 的绑定)可以指定以下配置:spring.cloud.stream.defaultBinder
spring.cloud.stream.defaultBinder=rabbit
input
output
spring.cloud.stream.bindings.input.binder=kafka
spring.cloud.stream.bindings.output.binder=rabbit