当前位置: 首页 > news >正文

临沂做网站建设的公司哪家好工商企业年报查询入口

临沂做网站建设的公司哪家好,工商企业年报查询入口,游戏网站设计模板,陕西百度推广的代理商ActiveMQ 和 JMS的关系? ActiveMQ是流行的开源消息中间件,JMS是Java平台定义的一种消息传递的标准。ActiveMQ实现了JMS规范,因此可以使用JMS API来与ActiveMQ进行交互。 JMS定义了一种标准的API。API包括了一些接口和类,用于创建…

ActiveMQ 和 JMS的关系?

ActiveMQ是流行的开源消息中间件,JMS是Java平台定义的一种消息传递的标准。ActiveMQ实现了JMS规范,因此可以使用JMS API来与ActiveMQ进行交互。

JMS定义了一种标准的API。API包括了一些接口和类,用于创建、发送、接收和处理消息。ActiveMQ实现了这些接口和类,并提供了一些额外的功能,例如消息持久化、消息过滤、事务支持等。


JmsMessagingTemplate跟ActiveMQ的关系?

JmsMessagingTemplate是Spring框架提供的JMS消息发送工具类,封装了JMS API的细节,使得发送JMS消息变得更加简单和方便。

JmsMessagingTemplate可以与任何实现了JMS规范的消息中间件集成,包括ActiveMQ。使用JmsMessagingTemplate发送消息时,需要指定目标消息队列或主题,以及消息内容。JmsMessagingTemplate会将消息封装成JMS消息对象,并通过JMS API将消息发送到指定的消息队列或主题。ActiveMQ则负责接收JMS消息,并将其存储在消息队列或主题中,等待消费者进行消费。

@JmsListener的作用?

@JmsListener是Spring JMS提供的一个注解,用于监听JMS消息队列或主题,并在收到消息时执行相应的方法。


ActiveMQ用法

引入依赖

<dependencies><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-activemq</artifactId></dependency><dependency><groupId>org.apache.activemq</groupId><artifactId>activemq-client</artifactId></dependency></dependencies>

application.properties配置文件

spring.activemq.broker-url=tcp://localhost:61616
spring.activemq.user=admin
spring.activemq.password=admin
# 队列名-支持自定义
spring.activemq.queue-name=queueTest
# 主题名-支持自定义
spring.activemq.topic-name=topicTest

配置类

// 加上@EnableJms是异步,不加默认是同步
@Configuration
public class ActiveMqConfig {@Value("${spring.activemq.broker-url}")private String brokerUrl;@Value("${spring.activemq.user}")private String userName;@Value("${spring.activemq.password}")private String password;@Value("${spring.activemq.queue-name}")private String queueName;@Value("${spring.activemq.topic-name}")private String topicName;@Bean(name = "queue")public Queue queue() {return new ActiveMQQueue(queueName);}@Bean(name = "topic")public Topic topic(){return new ActiveMQTopic(topicName);}@Beanpublic ConnectionFactory connectionFactory(){return new ActiveMQConnectionFactory(userName, password, brokerUrl);}/*** 在Queue模式中,对消息的监听需要对containerFactory进行配置* @param connectionFactory* @return*/@Bean("queueListener")public JmsListenerContainerFactory<?> queueJmsListenerContainerFactory(ConnectionFactory connectionFactory){SimpleJmsListenerContainerFactory factory = new SimpleJmsListenerContainerFactory();factory.setConnectionFactory(connectionFactory);// false的队列,true是主题factory.setPubSubDomain(false);return factory;}/*** 在topic模式中,对消息的监听需要对containerFactory进行配置* @param connectionFactory* @return*/@Bean("topicListener")public JmsListenerContainerFactory<?> topicJmsListenerContainerFactory(ConnectionFactory connectionFactory){SimpleJmsListenerContainerFactory factory = new SimpleJmsListenerContainerFactory();factory.setConnectionFactory(connectionFactory);// false的队列,true是主题factory.setPubSubDomain(true);return factory;}
}

生产者

@RestController
@RequestMapping("/activemq")
public class ProducerController {@Resourceprivate JmsMessagingTemplate jmsMessagingTemplate;@Autowiredprivate Queue queue;@Autowiredprivate Topic topic;/*** queue模式mq消息发送* @param msg* @return*/@GetMapping("/queue")public String sendQueue(String msg) {jmsMessagingTemplate.convertAndSend(queue, msg);return "success, 发送消息:" + msg;}/*** topic模式一对多的消息队列的生产者* @param msg*/@GetMapping("/topic")public String sendMsgTopic(@RequestParam String msg){jmsMessagingTemplate.convertAndSend(topic,msg);return "success, 发送消息:" + msg;}
}

消费者

@Component
public class Consumer {/*** queue模式的消费者* @param msg*/@JmsListener(destination="${spring.activemq.queue-name}", containerFactory="queueListener")public void queueConsumer(String msg) {System.out.println("queue收到消息:" + msg);}/*** topic模式的消费者* @param msg*/@JmsListener(destination = "${spring.activemq.topic-name}", containerFactory = "topicListener")public void topicConsumer(String msg){System.out.println("topic收到消息:" + msg);}
}

原文博客:https://blog.csdn.net/imVainiycos/article/details/126021665?spm=1001.2014.3001.5506

http://www.yayakq.cn/news/268747/

相关文章:

  • 安徽网站开发建设百度收录提交之后如何让网站更快的展示出来
  • 域名估价哪个网站准确手机网站网址申请
  • 捷信做单网站烟台网站建设询问企汇互联专业
  • 科技部网站温州阀门外贸网站建设
  • 南京做网站软件谷德设计网站
  • 中文网站欣赏注册了域名怎么做网站
  • 网站制作品牌公司网店培训教程
  • 长沙网络推广网站制作宿迁公司做网站
  • 公众号微信平台官网品牌网站建设优化公司哪家好
  • 酒店预订网站建设重庆好玩的地方
  • 网站文章排版建设一个网站的方法
  • 快速建设网站外链wordpress表单统计插件
  • 网站建设与管理课程介绍榆林网络公司建设网站
  • 资源网站后台系统WordPress adsen
  • 网站里面的超链接怎么做深圳网站建设深圳企业网站建设
  • 网站建设个一般需要花费多少钱个人网页html模板完整代码
  • 凤阳网站建设哪家好全网营销推广方案
  • 非凡网站建设 新三板最新wordpress新建首页
  • 网站特效wordpress手机主题漂亮
  • 可以做基因通路分析的网站wordpress口语主题
  • wordpress 网站建设在线代码生成器
  • 中国建设银行云浮分行网站推广策略用英语怎么说
  • 家用宽带怎样做网站服务器重庆市建筑协会信息网
  • 同性做视频网站辽宁网站建站
  • 大连自助建站做APP必须要有网站么
  • 烟台高新区规划国土建设局网站wordpress阅读数随机
  • 贵州省建设厅官方网站考证国外设计网站dooor
  • 网站建设倒计时摄影网站设计代码
  • phpstudy如何建设网站网站如何做关键词
  • 做网站预付款 怎么做账wordpress完整中文免费主题下载