Springboot整合Activemq的步骤和之前Activemq整合Spring相似。
首先还是添加Maven依赖。
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-activemq</artifactId>
</dependency>
设置SpringBoot的Application.properties配置文件
spring.activemq.broker-url=tcp://localhost:61616
spring.activemq.in-memory=true
spring.activemq.pool.enabled=false
启动类是不必可少的。
@SpringBootApplication
public class Application {
public static void main(String[] arg){
SpringApplication.run(Application.class);
}
}
简单的环境就搭好了。
开始使用Activemq吧。
首先编写消息产生这部分
@Component
public class SendMessage {
@Autowired
private JmsMessagingTemplate jmsTemplate;
public void sendMsg(Destination destination, final String message){//注意这里的Destination是javax.jms里的接口
jmsTemplate.convertAndSend(destination,message);
}
}
消费者部分
@Component
public class Consumer {
@JmsListener(destination = "test.queue")
public void ccc(String text){
System.out.println("Consumer收到消息"+text);
}
}
测试类
@RunWith(SpringJUnit4ClassRunner.class)
@SpringBootTest(classes = Application.class)
public class JmsTest {
@Autowired
private SendMessage sendMessage;
@Test
public void test() {
ActiveMQQueue activeMQQueue = new ActiveMQQueue("test.queue");
for (int i =0;i<20;i++){
sendMessage.sendMsg(activeMQQueue,"我发送消息了第"+i+"条");
}
}
}
springboot整合MQ就这样完成了。