/**
* 声明队列交换机等
* @param connectionFactory
* @return
*/
@Bean
public RabbitAdmin rabbitAdmin(ConnectionFactory connectionFactory) {
System.out.println(String.format("-----------getRabbitAdmin:%s", connectionFactory.hashCode()));
return new RabbitAdmin(connectionFactory);
}
如上,有参数connectFactory,若spring容器中只有一个ConnectionFactory 类型的bean,则不论参数取名为何都是按类型取bean ConnectionFactory 为参数,若有多个则参数取名必须为多个bean中的一个,否则报错。