MqServiceImpl.java 1.8 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758
  1. package com.service.impl;
  2. import com.rabbitmq.client.*;
  3. import com.service.MqService;
  4. import org.springframework.stereotype.Service;
  5. import javax.annotation.PostConstruct;
  6. import java.io.IOException;
  7. //@Service("MqServiceImpl")
  8. public class MqServiceImpl implements MqService {
  9. ConnectionFactory connectionFactory;
  10. Connection connection;
  11. Channel channel;
  12. @PostConstruct
  13. public void init() {
  14. connectionFactory = new ConnectionFactory();
  15. connectionFactory.setHost("47.110.156.18");
  16. connectionFactory.setPort(5672);
  17. connectionFactory.setUsername("semsx");
  18. connectionFactory.setVirtualHost("/scanmq");
  19. connectionFactory.setPassword("sczn2017");
  20. try {
  21. connection = connectionFactory.newConnection();
  22. channel = connection.createChannel();
  23. } catch (Exception e) {
  24. e.printStackTrace();
  25. }
  26. System.out.println("init");
  27. }
  28. @Override
  29. public void pushRabbitMessage() {
  30. try {
  31. // 获取信道
  32. AMQP.Queue.DeclareOk declareOk = channel.queueDeclare("0503declare", false, false, true, null);
  33. System.out.println("队列生成成功");
  34. channel.basicPublish("","0503declare",null,"messageOH".getBytes());
  35. System.out.println("队列推送消息成功");
  36. } catch (Exception e) {
  37. e.printStackTrace();
  38. }
  39. }
  40. @Override
  41. public void listenRabbitQueue() {
  42. DeliverCallback deliverCallback = (tag,message)->{
  43. System.out.println(new String(message.getBody()));
  44. };
  45. CancelCallback cancelCallback = System.out::println;
  46. try {
  47. channel.basicConsume("0503declare",true,deliverCallback,cancelCallback);
  48. } catch (IOException e) {
  49. e.printStackTrace();
  50. }
  51. }
  52. }