@kaleigh
Чтобы отправить сообщение в очередь RabbitMQ на Java, вам потребуется следующее:
@kaleigh
правьте отправить сообщение в очередь, используя метод basicPublish() канала. Укажите имя очереди, в которую отправляется сообщение, помимо других параметров, таких как обменник, маршрут ключ и свойства сообщения.Закройте канал и соединение после отправки сообщения, используя методы close() классов Channel и Connection соответственно. Приведенный ниже код демонстрирует, как отправить сообщение в очередь RabbitMQ на Java:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 |
import com.rabbitmq.client.Channel; import com.rabbitmq.client.Connection; import com.rabbitmq.client.ConnectionFactory; import java.io.IOException; import java.util.concurrent.TimeoutException; public class SendMessage { private final static String QUEUE_NAME = "my_queue"; public static void main(String[] args) throws IOException, TimeoutException { // Создание фабрики соединений ConnectionFactory factory = new ConnectionFactory(); factory.setHost("localhost"); factory.setUsername("guest"); factory.setPassword("guest"); // Создание соединения Connection connection = factory.newConnection(); // Создание канала Channel channel = connection.createChannel(); // Определение очереди channel.queueDeclare(QUEUE_NAME, false, false, false, null); // Сообщение для отправки String message = "Hello, RabbitMQ!"; // Отправка сообщения в очередь channel.basicPublish("", QUEUE_NAME, null, message.getBytes()); System.out.println(" [x] Sent '" + message + "'"); // Закрытие канала и соединения channel.close(); connection.close(); } } |
В приведенном выше примере создается соединение с локальным сервером RabbitMQ с использованием значения по умолчанию для имени пользователя и пароля. Определяется очередь под названием "my_queue" и отправляется сообщение "Hello, RabbitMQ!" в эту очередь. Затем канал и соединение закрываются.