| package doumeemes.config.rocketmq; | 
| import com.aliyun.openservices.ons.api.Message; | 
| import com.aliyun.openservices.ons.api.SendResult; | 
| import com.aliyun.openservices.ons.api.bean.ProducerBean; | 
| import com.aliyun.openservices.ons.api.exception.ONSClientException; | 
| import org.springframework.stereotype.Component; | 
|   | 
| /** | 
|  * @description: <h1>RocketMessageProducer rocketMQ消息生产者</h1> | 
|  * @author: LiRen | 
|  **/ | 
| //@Component | 
| public class RocketMessageProducer { | 
|   | 
|     private static ProducerBean producer; | 
|     private static MqConfig mqConfig; | 
|   | 
|     public RocketMessageProducer(ProducerBean producer, MqConfig mqConfig) { | 
|         this.producer = producer; | 
|         this.mqConfig = mqConfig; | 
|     } | 
|   | 
|     /** | 
|      * @Description: <h2>生产 普通 消息</h2> | 
|      * @author: LiRen | 
|      */ | 
|     public  static void producerMsg(String tag, String key, String body) { | 
|         Message msg = new Message(mqConfig.getTopic(), tag, key, body.getBytes()); | 
|         long time = System.currentTimeMillis(); | 
|         try { | 
|             SendResult sendResult = producer.send(msg); | 
|             assert sendResult != null; | 
|             System.out.println(time | 
|                     + " Send mq message success.Topic is:" + msg.getTopic() | 
|                     + " Tag is:" + msg.getTag() + " Key is:" + msg.getKey() | 
|                     + " msgId is:" + sendResult.getMessageId()); | 
|         } catch (ONSClientException e) { | 
|             e.printStackTrace(); | 
|             System.out.println(time + " Send mq message failed. Topic is:" + msg.getTopic()); | 
|             // TODO 发送失败 | 
|         } | 
|     } | 
|   | 
| } |