首页>代码>Spring Boot整合Apache ActiveMQ实现发送消息的实例>/accessing-headers/src/main/java/com/memorynotfound/integration/OrderSender.java
package com.memorynotfound.integration;

import org.apache.activemq.command.ActiveMQQueue;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.jms.core.JmsTemplate;
import org.springframework.stereotype.Service;

import javax.jms.DeliveryMode;
import javax.jms.Message;
import java.util.UUID;

import static com.memorynotfound.integration.ActiveMQConfig.ORDER_QUEUE;

@Service
public class OrderSender {

    private static Logger log = LoggerFactory.getLogger(OrderSender.class);

    @Autowired
    private JmsTemplate jmsTemplate;

    public void sendQueue(Order order) {
        log.info("sending with convertAndSend() to " + ORDER_QUEUE + " <" + order + ">");
        jmsTemplate.convertAndSend(ORDER_QUEUE, order, m -> {

            log.info("setting standard JMS headers before sending");
            m.setJMSCorrelationID(UUID.randomUUID().toString());
            m.setJMSExpiration(1000);
            m.setJMSMessageID("message-id");
            m.setJMSDestination(new ActiveMQQueue(ORDER_QUEUE));
            m.setJMSReplyTo(new ActiveMQQueue(ORDER_QUEUE));
            m.setJMSDeliveryMode(DeliveryMode.NON_PERSISTENT);
            m.setJMSPriority(Message.DEFAULT_PRIORITY);
            m.setJMSTimestamp(System.nanoTime());
            m.setJMSType("type");

            log.info("setting custom JMS headers before sending");
            m.setStringProperty("jms-custom-header", "this is a custom jms property");
            m.setBooleanProperty("jms-custom-property", true);
            m.setDoubleProperty("jms-custom-property-price", 0.0);

            return m;
        });

    }

}
最近下载更多
1358849392  LV21 2023年6月9日
mudingc木钉  LV30 2021年6月16日
wz66666  LV9 2021年6月7日
caozongan  LV19 2021年4月1日
二手玫瑰  LV15 2021年3月27日
chengqiang  LV13 2021年3月25日
Druid2017  LV4 2021年1月29日
qw112233  LV1 2021年1月11日
626364708  LV4 2020年12月15日
newhaijun  LV15 2020年12月13日
最近浏览更多
woldxy  LV12 2023年9月28日
张朕朕  LV3 2023年9月10日
西瓜哥哥  LV4 2023年8月8日
1358849392  LV21 2023年6月9日
renyuan  LV9 2023年4月27日
小资李  LV13 2023年3月30日
如柴骨瘦假胸硅胶  LV11 2023年3月14日
Rommel  LV27 2023年2月13日
hzhsh0223  LV18 2023年2月3日
kissnicky  LV7 2023年1月31日
顶部 客服 微信二维码 底部
>扫描二维码关注最代码为好友扫描二维码关注最代码为好友