本文整理匯總了Java中com.rabbitmq.client.Channel.queueDeclare方法的典型用法代碼示例。如果您正苦於以下問題:Java Channel.queueDeclare方法的具體用法?Java Channel.queueDeclare怎麽用?Java Channel.queueDeclare使用的例子?那麽, 這裏精選的方法代碼示例或許可以為您提供幫助。您也可以進一步了解該方法所在類com.rabbitmq.client.Channel
的用法示例。
在下文中一共展示了Channel.queueDeclare方法的15個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的Java代碼示例。
示例1: main
import com.rabbitmq.client.Channel; //導入方法依賴的package包/類
public static void main(String[] args) throws IOException {
ConnectionFactory factory = new ConnectionFactory();
factory.setUsername("guest");
factory.setPassword("guest");
factory.setVirtualHost("/");
factory.setHost("localhost");
factory.setPort(5672);
Connection newConnection = factory.newConnection();
Channel channel = newConnection.createChannel();
Scanner scanner = new Scanner(System.in);
String message = "";
while(!message.equals("exit")){
System.out.println("Enter your message");
message = scanner.next();
channel.queueDeclare("flink-test", true, false, false, null);
channel.basicPublish("", "flink-test", new BasicProperties.Builder()
.correlationId(java.util.UUID.randomUUID().toString()).build(), message.getBytes());
}
scanner.close();
channel.close();
newConnection.close();
}
開發者ID:PacktPublishing,項目名稱:Practical-Real-time-Processing-and-Analytics,代碼行數:26,代碼來源:RMQPublisher.java
示例2: main
import com.rabbitmq.client.Channel; //導入方法依賴的package包/類
public static void main(String[] args) throws NoSuchAlgorithmException, KeyManagementException, URISyntaxException, IOException, InterruptedException {
ConnectionFactory factory = new ConnectionFactory();
factory.setUri("amqp://guest:[email protected]");
factory.setConnectionTimeout(300000);
Connection connection = factory.newConnection();
Channel channel = connection.createChannel();
channel.queueDeclare("my-queue", true, false, false, null);
int count = 0;
while (count < 5000) {
String message = "Message number " + count;
channel.basicPublish("", "my-queue", null, message.getBytes());
count++;
System.out.println("Published message: " + message);
Thread.sleep(5000);
}
}
示例3: main
import com.rabbitmq.client.Channel; //導入方法依賴的package包/類
/**
* @param args
* @throws IOException
* @throws TimeoutException
* @date 2017年7月11日 下午5:53:02
* @writer junehappylove
*/
public static void main(String[] args) throws IOException, TimeoutException {
ConnectionFactory factory = new ConnectionFactory();
factory.setHost(host);
factory.setUsername(username);
factory.setPassword(password);
factory.setPort(port);
factory.setVirtualHost(virtualHost);
Connection connection = factory.newConnection();
Channel channel = connection.createChannel();
channel.queueDeclare(TASK_QUEUE_NAME, true, false, false, null);
// 分發信息
for (int i = 0; i < 20; i++) {
String message = "Hello RabbitMQ" + i;
channel.basicPublish("", TASK_QUEUE_NAME, MessageProperties.PERSISTENT_TEXT_PLAIN, message.getBytes());
System.out.println("NewTask send '" + message + "'");
}
channel.close();
connection.close();
}
示例4: main
import com.rabbitmq.client.Channel; //導入方法依賴的package包/類
public static void main(String[] argv) throws Exception {
ConnectionFactory factory = new ConnectionFactory();
// factory.setHost("");
factory.setUri("amqp://alpha.netkiller.cn");
factory.setUsername("admin");
// factory.setPassword("admin123");
Connection connection = factory.newConnection();
Channel channel = connection.createChannel();
channel.queueDeclare(QUEUE_NAME, false, false, false, null);
String message = "Hello World!";
channel.basicPublish("", QUEUE_NAME, null, message.getBytes());
System.out.println(" [x] Sent '" + message + "'");
channel.close();
connection.close();
}
示例5: main
import com.rabbitmq.client.Channel; //導入方法依賴的package包/類
public static void main(String[] argv) throws Exception {
ConnectionFactory factory = new ConnectionFactory();
factory.setHost("localhost");
Connection connection = factory.newConnection();
Channel channel = connection.createChannel();
channel.queueDeclare(TASK_QUEUE_NAME, true, false, false, null);
String message = getMessage(argv);
channel.basicPublish("", TASK_QUEUE_NAME,
MessageProperties.PERSISTENT_TEXT_PLAIN,
message.getBytes("UTF-8"));
System.out.println(" [x] Sent '" + message + "'");
channel.close();
connection.close();
}
示例6: updateTaskStatus
import com.rabbitmq.client.Channel; //導入方法依賴的package包/類
private void updateTaskStatus(TaskStatus status) {
logger.info("[Study = " + taskStudy + "] [Unit = "+ unitId + "] Sending task update to server. Task id = [" + task.getId() + "] status = ["+status.toString()+"]");
final String QUEUE_NAME = SystemConstants.UBONGO_SERVER_TASKS_STATUS_QUEUE;
try {
ConnectionFactory factory = new ConnectionFactory();
factory.setHost(serverAddress);
Connection connection = factory.newConnection();
Channel channel = connection.createChannel();
channel.queueDeclare(QUEUE_NAME, false, false, false, null);
task.setStatus(status);
RabbitData message = new RabbitData(task, MachineConstants.UPDATE_TASK_REQUEST);
channel.basicPublish("", QUEUE_NAME, null, message.getBytes());
if (logger.isDebugEnabled()) {
logger.debug(" [!] Sent '" + message.getMessage() + "'");
}
channel.close();
connection.close();
} catch (Exception e){
logger.error("[Study = " + taskStudy + "] [Unit = "+ unitId + "] Failed sending task status to server. Task id = [" + task.getId() + "] Status = [" +
status.toString() + "] error: " + e.getMessage(), e);
}
}
示例7: main
import com.rabbitmq.client.Channel; //導入方法依賴的package包/類
public static void main(String[] args) throws Exception {
String queueName = "TestQueue";
ConnectionFactory factory = new ConnectionFactory();
factory.setHost("127.0.0.1");
Connection connection = factory.newConnection();
Channel channel = connection.createChannel();
channel.queueDeclare(queueName, false, false, false, null);
System.out.println(" [*] Waiting for messages...");
QueueingConsumer consumer = new QueueingConsumer(channel);
channel.basicConsume(queueName, true, consumer);
while (true) {
QueueingConsumer.Delivery delivery = consumer.nextDelivery();
String message = new String(delivery.getBody());
System.out.println(" [x] Received '" + message + "'");
}
}
示例8: run
import com.rabbitmq.client.Channel; //導入方法依賴的package包/類
@Override
public void run(AppConfiguration configuration, Environment environment) throws Exception {
SessionFactory sessionFactory = hibernate.getSessionFactory();
MemoDAO memoDAO = new MemoDAO(sessionFactory);
QueueConfig queueConfig = configuration.getQueueConfig();
ConnectionFactory connectionFactory = QueueHelper.getQueue(queueConfig);
Channel channel = connectionFactory.newConnection().createChannel();
channel.exchangeDeclare(queueConfig.getExchangeName(), "direct", true);
channel.queueDeclare(queueConfig.getQueueName(), true, false, false, null);
channel.queueBind(queueConfig.getQueueName(), queueConfig.getExchangeName(), queueConfig.getRoutingKey());
channel.basicConsume(queueConfig.getQueueName(), false, "myConsumerTag", new MemoWorker(memoDAO, channel, sessionFactory));
}
示例9: main
import com.rabbitmq.client.Channel; //導入方法依賴的package包/類
public static void main(String[] args) throws IOException, TimeoutException {
//建立連接工廠
ConnectionFactory factory = new ConnectionFactory();
//設置連接地址
factory.setHost("seaof-153-125-234-173.jp-tokyo-10.arukascloud.io");
factory.setPort(31084);
//獲取連接
Connection connection = factory.newConnection();
//獲取渠道
Channel channel = connection.createChannel();
//聲明隊列,如果不存在就新建
//參數1隊列名稱;參數2是否持久化;參數3排他性隊列,連接斷開自動刪除;參數4是否自動刪除;參數5.參數
channel.queueDeclare(QUEUE_NAME, false, false, false, null);
//發送的消息
String message = Thread.currentThread().getName() + "Hello ";
//參數1 交換機;參數2 路由鍵;參數3 基礎屬性;參數4 消息體
channel.basicPublish("", QUEUE_NAME, null, message.getBytes());
System.out.println(Thread.currentThread().getName() + "[send]" + message);
channel.close();
connection.close();
}
示例10: GabrielGatewayClient
import com.rabbitmq.client.Channel; //導入方法依賴的package包/類
public GabrielGatewayClient(int shardId, Channel channel) throws IOException {
super(shardId, channel, true);
channel.queueDeclare("shard-" + shardId + "-getping", false, false, false, null);
channel.queueDeclare("shard-" + shardId + "-getping-response", false, false, false, null);
channel.basicConsume("shard-" + shardId + "-getping-response", true, new DefaultConsumer(channel) {
@Override
public void handleDelivery(String consumerTag, Envelope envelope, AMQP.BasicProperties properties, byte[] body) throws IOException {
long now = System.currentTimeMillis();
ping = now - Longs.fromByteArray(body);
}
});
calculatePing();
PING_CALCULATOR.scheduleAtFixedRate(this::calculatePing, 30, 30, TimeUnit.SECONDS);
}
示例11: init
import com.rabbitmq.client.Channel; //導入方法依賴的package包/類
public static synchronized void init(Channel channel) throws IOException, TimeoutException {
if(current != null) {
throw new IllegalStateException("Already started");
}
current = new GatewayInfo("unknown", "unknown", -1, -1, -1, -1, -1, -1, -1);
channel.queueDeclare("gateway-info", false, false, false, null);
channel.basicConsume("gateway-info", true, new DefaultConsumer(channel) {
@Override
public void handleDelivery(String consumerTag, Envelope envelope, AMQP.BasicProperties properties, byte[] body) throws IOException {
JSONObject object = new JSONObject(new String(body, StandardCharsets.UTF_8));
JSONObject ram = object.getJSONObject("ram");
try {
current = new GatewayInfo(
object.getString("version"),
object.getString("jda-version"),
object.getDouble("cpu-usage"),
object.getInt("thread-count"),
object.getLong("uptime"),
ram.getLong("used"),
ram.getLong("free"),
ram.getLong("total"),
ram.getLong("max")
);
} catch(JSONException e) {
GabrielBot.LOGGER.error("Error creating GatewayInfo: " + e.getMessage());
}
}
});
}
示例12: main
import com.rabbitmq.client.Channel; //導入方法依賴的package包/類
/**
* @param args
* @throws TimeoutException
* @throws IOException
* @date 2017年7月11日 下午5:21:46
* @writer junehappylove
*/
public static void main(String[] args) throws IOException, TimeoutException {
ConnectionFactory factory = new ConnectionFactory();
factory.setHost(host);
factory.setUsername(username);
factory.setPassword(password);
factory.setPort(port);
factory.setVirtualHost(virtualHost);
Connection connection = null;
Channel channel = null;
try {
// 創建一個新的連接
connection = factory.newConnection();
// 創建一個通道
channel = connection.createChannel();
// 聲明一個隊列
// queueDeclare第一個參數表示隊列名稱
//第二個參數為是否持久化(true表示是,隊列將在服務器重啟時生存)
//第三個參數為是否是獨占隊列(創建者可以使用的私有隊列,斷開後自動刪除)
//第四個參數為當所有消費者客戶端連接斷開時是否自動刪除隊列
//第五個參數為隊列的其他參數
channel.queueDeclare(QUEUE_NAME, false, false, false, null);
String message = "{\"temperature\":100}";
// 發送消息到隊列中
//basicPublish第一個參數為交換機名稱
//第二個參數為隊列映射的路由key
//第三個參數為消息的其他屬性
//第四個參數為發送信息的主體
channel.basicPublish("", QUEUE_NAME, null, message.getBytes("UTF-8"));
System.out.println("Producer Send +'" + message + "'");
} catch (Exception e) {
e.printStackTrace();
} finally {
// 關閉通道和連接
channel.close();
connection.close();
}
}
示例13: main
import com.rabbitmq.client.Channel; //導入方法依賴的package包/類
/**
* @param args
* @throws TimeoutException
* @throws IOException
* @date 2017年7月11日 下午5:32:45
* @writer junehappylove
*/
public static void main(String[] args) throws IOException, TimeoutException {
// 創建連接工廠
ConnectionFactory factory = new ConnectionFactory();
// 設置RabbitMQ地址
factory.setHost(host);
factory.setUsername(username);
factory.setPassword(password);
factory.setPort(port);
factory.setVirtualHost(virtualHost);
// 創建一個新的連接
Connection connection = factory.newConnection();
// 創建一個通道
Channel channel = connection.createChannel();
// 聲明要關注的隊列
channel.queueDeclare(QUEUE_NAME, false, false, false, null);
System.out.println("Customer Waiting Received messages");
// DefaultConsumer類實現了Consumer接口,通過傳入一個頻道,
// 告訴服務器我們需要那個頻道的消息,如果頻道中有消息,就會執行回調函數handleDelivery
Consumer consumer = new DefaultConsumer(channel) {
//envelope主要存放生產者相關信息(比如交換機、路由key等)
//body是消息實體
@Override
public void handleDelivery(String consumerTag, Envelope envelope, AMQP.BasicProperties properties,
byte[] body) throws IOException {
String message = new String(body, "UTF-8");
System.out.println("Customer Received '" + message + "'");
}
};
// 自動回複隊列應答 -- RabbitMQ中的消息確認機製
channel.basicConsume(QUEUE_NAME, true, consumer);
}
示例14: initChannel
import com.rabbitmq.client.Channel; //導入方法依賴的package包/類
private void initChannel(Channel channel) throws IOException {
channel.basicQos(1);
// this.channel.exchangeDeclare(this.exchange, TOPIC);
Map<String, Object> args = new HashMap<>();
args.put("x-expires", 180000); // Three minutes
channel.queueDeclare(QUEUE_NAME, true, true, true, args);
channel.queueBind(QUEUE_NAME, NOVA_EXCHANGE, ROUTING_KEY);
channel.queueBind(QUEUE_NAME, NEUTRON_EXCHANGE, ROUTING_KEY);
channel.queueBind(QUEUE_NAME, KEYSTONE_EXCHANGE, ROUTING_KEY);
channel.queueBind(this.queue, this.exchange, this.routingKey);
}
示例15: send
import com.rabbitmq.client.Channel; //導入方法依賴的package包/類
@POST
@Path("rabbitmqRecv")
public void send() throws Exception {
ConnectionFactory factory = new ConnectionFactory();
factory.setUsername("guest");
factory.setPassword("guest");
factory.setHost("127.0.0.1");
Connection connection = factory.newConnection();
Channel channel = connection.createChannel();
channel.queueDeclare(QUEUE_NAME, false, false, false, null);
System.out.println(" [*] Waiting for messages. To exit press CTRL+C");
DefaultConsumer consumer = new DefaultConsumer(channel) {
@Override
public void handleDelivery(String consumerTag, Envelope envelope, AMQP.BasicProperties properties,
byte[] body) throws IOException {
System.out.println(properties.getHeaders());
String message = new String(body, "UTF-8");
System.out.println(" [x] Received '" + message + "'");
}
};
channel.basicConsume(QUEUE_NAME, true, consumer);
}