我想在 spring mvc 应用程序中配置嵌入式 ActiveMQ 代理服务。
这是我的配置
@Configuration
@EnableJms
public class JmsConfiguration {
@Bean(initMethod = "start", destroyMethod = "stop")
public BrokerService brokerService() throws Exception {
BrokerService brokerService = new BrokerService();
brokerService.setPersistent(false);
brokerService.setUseJmx(false);
brokerService.addConnector("vm://localhost:0");
brokerService.setBrokerName("broker");
brokerService.setUseShutdownHook(false);
return brokerService;
}
@Bean
public ConnectionFactory connectionFactory(){
return new ActiveMQConnectionFactory("vm://localhost:0");
}
@Bean
public ActiveMQQueue defaultDestination(){
return new ActiveMQQueue("broker");
}
@Bean
public JmsTemplate jmsTemplate(){
JmsTemplate jmsTemplate = new JmsTemplate(connectionFactory());
jmsTemplate.setDefaultDestination(defaultDestination());
return jmsTemplate;
}
}
Run Code Online (Sandbox Code Playgroud)
和简单的测试获取请求将消息发送到代理服务私有 JmsTemplate jmsTemplate;
@Autowired
public TestController(JmsTemplate jmsTemplate){
this.jmsTemplate = jmsTemplate;
}
@RequestMapping(value="/test/jms", …Run Code Online (Sandbox Code Playgroud)