MQ

xss大约 2 分钟MQMQ

@Component  //注册为Bean
public class TestListener {
//---------------------------------------------------------------------------------

@RabbitListener(queues = "hq")   //定义此方法为队列yyds的监听器,一旦监听到新的消息,就会接受并处理
public void test(Message message){
    System.out.println("test: "+new String(message.getBody()));
}


//---------------------------------------------------------------------------------

// @RabbitListener(queues = "hq") //定义此方法为队列yyds的监听器,一旦监听到新的消息,就会接受并处理 // public void test1(String message){ // System.out.println("test1: "+message); // }

//---------------------------------------------------------------------------------


@RabbitListener(queues = "xss")          //监听并回答
public String receiver(String data){
    System.out.println("一号消息队列监听器 "+data);
    return "收到!";
}






//---------------------------------------------------------------------------------



@RabbitListener(queues = "xss",containerFactory = "listenerContainer")          //监听并回答
public String receiver1(String data){
    System.out.println("1号消息队列监听器 "+data);
    return "收到!";
}

@RabbitListener(queues = "xss",containerFactory = "listenerContainer")          //监听并回答
public String receiver2(String data){
    System.out.println("2号消息队列监听器 "+data);
    return "收到!";
}
//---------------------------------------------------------------------------------






@RabbitListener(queues = "xss",containerFactory = "listenerContainer",concurrency = "10")  //concurrency  线程  containerFactory指定队列 拿去数据
public String receiver3(String data){
    System.out.println("3号消息队列监听器 "+data);
    return "收到!";
}
//---------------------------------------------------------------------------------

//发布订阅模式 监听不同的队列再同一个交换机

@RabbitListener(queues = "xss1")   //定义此方法为队列yyds的监听器,一旦监听到新的消息,就会接受并处理
public void demo1(String message){
    System.out.println("demo1: "+message);
}


@RabbitListener(queues = "xss2")   //定义此方法为队列yyds的监听器,一旦监听到新的消息,就会接受并处理
public void demo2(String message){
    System.out.println("demo2: "+message);
}

//---------------------------------------------------------------------------------


//路由模式  监听同一个队列 不同routing key  再同一个交换机

@RabbitListener(queues = "hq1")   //定义此方法为队列yyds的监听器,一旦监听到新的消息,就会接受并处理
public void demo3(String message){
    System.out.println("demo1: "+message);
}




//---------------------------------------------------------------------------------

// // @RabbitListener(queues = "xss",messageConverter = "jacksonConverter") //json 处理消息 // public void test2(User user){ // System.out.println(user); // } //---------------------------------------------------------------------------------

@RabbitListener(queues = "dl-xss", messageConverter = "jacksonConverter")   // 监听死信队列的消息  json 处理
public void receiver(User user){
    System.out.println("死信队列的消息"+user);
}

//---------------------------------------------------------------------------------

}

Loading...