|
@@ -13,9 +13,10 @@ import org.springframework.context.annotation.Configuration;
|
|
|
public class ArtworkConfig {
|
|
|
|
|
|
public static final String QUEUE_NAME = "artwork.queue";
|
|
|
+ public static final String TEMP_QUEUE_NAME = "temp.artwork.queue";
|
|
|
public static final String DIRECT_EXCHANGE_NAME = "artwork.direct.exchange";
|
|
|
|
|
|
- //创建一个队列
|
|
|
+ // 创建一个队列
|
|
|
@Bean
|
|
|
public Queue artworkQueue() {
|
|
|
// durable:是否持久化,默认是false,持久化队列:会被存储在磁盘上,当消息代理重启时仍然存在,暂存队列:当前连接有效
|
|
@@ -25,7 +26,17 @@ public class ArtworkConfig {
|
|
|
return new Queue(QUEUE_NAME, true, false, false);
|
|
|
}
|
|
|
|
|
|
- //创建一个名为TestDirectExchange的Direct类型的交换机
|
|
|
+ // 创建一个队列
|
|
|
+ @Bean
|
|
|
+ public Queue tempArtworkQueue() {
|
|
|
+ // durable:是否持久化,默认是false,持久化队列:会被存储在磁盘上,当消息代理重启时仍然存在,暂存队列:当前连接有效
|
|
|
+ // exclusive:默认也是false,只能被当前创建的连接使用,而且当连接关闭后队列即被删除。此参考优先级高于durable
|
|
|
+ // autoDelete:是否自动删除,有消息者订阅本队列,然后所有消费者都解除订阅此队列,会自动删除。
|
|
|
+ // arguments:队列携带的参数,比如设置队列的死信队列,消息的过期时间等等。
|
|
|
+ return new Queue(TEMP_QUEUE_NAME, true, false, false);
|
|
|
+ }
|
|
|
+
|
|
|
+ // 创建一个名为TestDirectExchange的Direct类型的交换机
|
|
|
@Bean
|
|
|
public DirectExchange artworkDirectExchange() {
|
|
|
// durable:是否持久化,默认是false,持久化交换机。
|
|
@@ -34,11 +45,18 @@ public class ArtworkConfig {
|
|
|
return new DirectExchange(DIRECT_EXCHANGE_NAME, true, false);
|
|
|
}
|
|
|
|
|
|
- //绑定交换机和队列
|
|
|
+ // 绑定交换机和队列
|
|
|
@Bean
|
|
|
public Binding artworkBinding() {
|
|
|
//bind队列to交换机
|
|
|
return BindingBuilder.bind(artworkQueue()).to(artworkDirectExchange()).withQueueName();
|
|
|
}
|
|
|
|
|
|
+ // 绑定交换机和队列
|
|
|
+ @Bean
|
|
|
+ public Binding tempArtworkBinding() {
|
|
|
+ //bind队列to交换机
|
|
|
+ return BindingBuilder.bind(tempArtworkQueue()).to(artworkDirectExchange()).withQueueName();
|
|
|
+ }
|
|
|
+
|
|
|
}
|