springboot配置ActiveMQ

发布时间 2023-03-24 16:36:28作者: 策码奔腾
@Configuration
public class ActiveMQConfig {


    @Bean
    public JmsTemplate jmsTemplate(ConnectionFactory connectionFactory) {
        JmsTemplate jmsTemplate = new JmsTemplate(connectionFactory);
        jmsTemplate.setDeliveryPersistent(true); // 设置消息持久化
        jmsTemplate.setExplicitQosEnabled(true); // 开启QoS
        jmsTemplate.setPriority(4); // 设置消息优先级
        jmsTemplate.setTimeToLive(60000); // 设置消息过期时间
        jmsTemplate.setSessionTransacted(true); // 开启事务
        jmsTemplate.setSessionAcknowledgeMode(Session.CLIENT_ACKNOWLEDGE); // 设置手动确认机制
        jmsTemplate.setDeliveryMode(DeliveryMode.PERSISTENT); // 消息持久化
        jmsTemplate.setTimeToLive(60000); // 设置
    }
  @Bean
  public RedeliveryPolicy redeliveryPolicy() {
    RedeliveryPolicy redeliveryPolicy = new RedeliveryPolicy();
   redeliveryPolicy.setMaximumRedeliveries(3); // 设置最大重试次数为3
   redeliveryPolicy.setInitialRedeliveryDelay(5000); // 设置初始重试间隔为5秒
   redeliveryPolicy.setBackOffMultiplier(2); // 设置重试间隔递增倍数为2
    return redeliveryPolicy;
}


}