diff --git a/src/main/java/cn/hezhaohui/mq/Publish.java b/src/main/java/cn/hezhaohui/mq/Publish.java new file mode 100644 index 0000000..c638e7b --- /dev/null +++ b/src/main/java/cn/hezhaohui/mq/Publish.java @@ -0,0 +1,37 @@ +package cn.hezhaohui.mq; + +import com.rabbitmq.client.Channel; +import com.rabbitmq.client.Connection; +import com.rabbitmq.client.ConnectionFactory; + +import java.io.IOException; +import java.util.Scanner; +import java.util.concurrent.TimeoutException; + +public class Publish { + private static final String EXCHANGE_NAME = "logs"; + + public static void main(String[] args) throws IOException, TimeoutException { + ConnectionFactory factory = new ConnectionFactory(); + + try (Connection connection = factory.newConnection(); + Channel channel = connection.createChannel(); + Scanner scanner = new Scanner(System.in)) { + channel.exchangeDeclare(EXCHANGE_NAME, "fanout"); + String queue = channel.queueDeclare().getQueue(); + channel.queueBind(queue, EXCHANGE_NAME, ""); + + while (true) { + String msg = scanner.nextLine(); + if (msg.equals("exit")) { + break; + } + channel.basicPublish(EXCHANGE_NAME, "", null, msg.getBytes()); + System.out.println("[Sent] " + msg); + } + } + + + + } +}