/**
* TODO
*
*/
package cn.itcast.topic;
/**
* @author hushuang
*
*/
import com.rabbitmq.client.ConnectionFactory;
import com.rabbitmq.client.Connection;
import com.rabbitmq.client.Channel;
public class TopicSend {
private static final String EXCHANGE_NAME = "topic_logs";
public static void main(String[] argv) {
Connection connection = null;
Channel channel = null;
try {
ConnectionFactory factory = new ConnectionFactory();
factory.setHost("localhost");
connection = factory.newConnection();
channel = connection.createChannel();
// 声明一个匹配模式的交换器
channel.exchangeDeclare(EXCHANGE_NAME, "topic");
// 待发送的消息
String[] routingKeys = new String[]{"quick.orange.rabbit",
"lazy.orange.elephant",
"quick.orange.fox",
"lazy.brown.fox",
"quick.brown.fox",
"quick.orange.male.rabbit",
"lazy.orange.male.rabbit"};
// 发送消息
for(String severity :routingKeys){
String message = "From " severity " routingKey' s message!";
channel.basicPublish(EXCHANGE_NAME, severity, null, message.getBytes());
System.out.println("TopicSend [x] Sent '" severity "':'" message "'");
}
} catch (Exception e) {
e.printStackTrace();
} finally {
if (connection != null) {
try {
connection.close();
} catch (Exception ignore) {
}
}
}
}
}
资源文件列表
rabbitmq/.classpath , 363
rabbitmq/.project , 384
rabbitmq/.settings/org.eclipse.jdt.core.prefs , 598
rabbitmq/bin/cn/itcast/publish/EmitLog.class , 2170
rabbitmq/bin/cn/itcast/publish/ReceiveLogs1$1.class , 1500
rabbitmq/bin/cn/itcast/publish/ReceiveLogs1.class , 2284
rabbitmq/bin/cn/itcast/publish/ReceiveLogs2$1.class , 1500
rabbitmq/bin/cn/itcast/publish/ReceiveLogs2.class , 2284
rabbitmq/bin/cn/itcast/topic/ReceiveLogsTopic1$1.class , 1612
rabbitmq/bin/cn/itcast/topic/ReceiveLogsTopic1.class , 2750
rabbitmq/bin/cn/itcast/topic/ReceiveLogsTopic2$1.class , 1612
rabbitmq/bin/cn/itcast/topic/ReceiveLogsTopic2.class , 2767
rabbitmq/bin/cn/itcast/topic/TopicSend.class , 2774
rabbitmq/bin/com/itcast/routing/ReceiveLogsDirect1$1.class , 1608
rabbitmq/bin/com/itcast/routing/ReceiveLogsDirect1.class , 2859
rabbitmq/bin/com/itcast/routing/ReceiveLogsDirect2$1.class , 1608
rabbitmq/bin/com/itcast/routing/ReceiveLogsDirect2.class , 2826
rabbitmq/bin/com/itcast/routing/RoutingSendDirect.class , 2366
rabbitmq/bin/com/rabbit/helloword/C$1.class , 1498
rabbitmq/bin/com/rabbit/helloword/C.class , 1759
rabbitmq/bin/com/rabbit/helloword/P.class , 2015
rabbitmq/bin/com/rabbit/queues/NewTask.class , 2296
rabbitmq/bin/com/rabbit/queues/Worker1$1.class , 1928
rabbitmq/bin/com/rabbit/queues/Worker1.class , 2214
rabbitmq/bin/com/rabbit/queues/Worker2$1.class , 1934
rabbitmq/bin/com/rabbit/queues/Worker2.class , 2330
rabbitmq/bin/com/rabbitmq/publish/EmitLog.class , 2220
rabbitmq/bin/com/rabbitmq/publish/ReceiveLogs1$1.class , 1533
rabbitmq/bin/com/rabbitmq/publish/ReceiveLogs1.class , 2338
rabbitmq/bin/com/rabbitmq/publish/ReceiveLogs2.class , 303
rabbitmq/lib/rabbitmq-client.jar , 419585
rabbitmq/src/cn/itcast/publish/EmitLog.java , 895
rabbitmq/src/cn/itcast/publish/ReceiveLogs1.java , 1076
rabbitmq/src/cn/itcast/publish/ReceiveLogs2.java , 1076
rabbitmq/src/cn/itcast/topic/ReceiveLogsTopic1.java , 1447
rabbitmq/src/cn/itcast/topic/ReceiveLogsTopic2.java , 1457
rabbitmq/src/cn/itcast/topic/TopicSend.java , 1440
rabbitmq/src/com/itcast/routing/ReceiveLogsDirect1.java , 1498
rabbitmq/src/com/itcast/routing/ReceiveLogsDirect2.java , 1479
rabbitmq/src/com/itcast/routing/RoutingSendDirect.java , 1108
rabbitmq/src/com/rabbit/helloword/C.java , 1655
rabbitmq/src/com/rabbit/helloword/P.java , 1172
rabbitmq/src/com/rabbit/queues/NewTask.java , 1041
rabbitmq/src/com/rabbit/queues/Worker1.java , 1495
rabbitmq/src/com/rabbit/queues/Worker2.java , 1451
rabbitmq/src/com/rabbitmq/publish/EmitLog.java , 1061
rabbitmq/src/com/rabbitmq/publish/ReceiveLogs1.java , 1595
rabbitmq/src/com/rabbitmq/publish/ReceiveLogs2.java , 67