Destination

配置信息

<!-- 配置消息的Destination对象 -->
<bean id="test-queue" class="org.apache.activemq.command.ActiveMQQueue"><constructor-arg name="name" value="test-queue"></constructor-arg>
</bean>
<bean id="itemAddTopic" class="org.apache.activemq.command.ActiveMQTopic"><constructor-arg name="name" value="item-add-topic"></constructor-arg>
</bean>

添加监听器

ItemAddMessageListener
监听添加商品事件

public class ItemAddMessageListener implements MessageListener {@Autowiredprivate SearchItemMapper searchItemMapper;@Autowiredprivate SolrServer solrServer;@Overridepublic void onMessage(Message message) {try {// 从消息中取商品idTextMessage textMessage = (TextMessage) message;String text = textMessage.getText();long itemId = Long.parseLong(text);// 根据商品id查询数据,取商品信息// 等待事务提交Thread.sleep(1000);SearchItem searchItem = searchItemMapper.getItemById(itemId);// 创建文档对象SolrInputDocument document = new SolrInputDocument();// 向文档对象中添加域document.addField("id", searchItem.getId());document.addField("item_title", searchItem.getTitle());document.addField("item_sell_point", searchItem.getSell_point());document.addField("item_price", searchItem.getPrice());document.addField("item_image", searchItem.getImage());document.addField("item_category_name", searchItem.getCategory_name());document.addField("item_desc", searchItem.getItem_desc());// 把文档对象写入索引库solrServer.add(document);// 提交solrServer.commit();} catch (Exception e) {e.printStackTrace();}}}

配置监听器

ItemAddMessageListener

<!-- 配置消息的接收者 -->
<!-- 配置监听器 -->
<bean id="myMessageListener" class="com.taotao.search.listener.MyMessageListener"/>
<!-- 消息监听容器 -->
<bean class="org.springframework.jms.listener.DefaultMessageListenerContainer"><property name="connectionFactory" ref="connectionFactory" /><property name="destination" ref="test-queue" /><property name="messageListener" ref="myMessageListener" />
</bean>
<bean id="itemAddMessageListener" class="com.taotao.search.listener.ItemAddMessageListener"/>
<bean class="org.springframework.jms.listener.DefaultMessageListenerContainer"><property name="connectionFactory" ref="connectionFactory" /><property name="destination" ref="itemAddTopic" /><property name="messageListener" ref="itemAddMessageListener" />
</bean>

ActiveMQ添加商品接收消息相关推荐

  1. ActiveMQ添加商品发送消息

    添加商品 需要同步索引库,同步缓存,生成静态页面等等 很多地方,都需要监听添加商品的事件,所以,这里使用Topic模式 方案选择 方案一:直接写业务逻辑 在商品服务模块,添加商品的业务逻辑中,添加同步 ...

  2. ActiveMQ 发送和接收消息

    一.添加 jar 包 <dependency><groupId>org.apache.activemq</groupId><artifactId>act ...

  3. activeMQ高并发发送消息异常解决方法

    高并发发送消息异常解决方法: 现象:使用10个线程每100ms发送一条消息,大约3000多条后,出现异常,所有线程停 止: javax.jms.JMSException:Could not conne ...

  4. Spring整合ActiveMQ接收消息

    操作步骤 第一步:把Activemq相关的jar包,添加到工程中 第二步:创建一个MessageListener的实现类,负责监听 第三步:配置MessageListener监听器 第四步:初始化Sp ...

  5. ActiveMQ 部署及发送接收消息

    ActiveMQ 部署及发送接收消息 一.           下载 下载地址:http://activemq.apache.org/ 我这里使用的版本为当前最新5.8.0. 下载版本有Windows ...

  6. ActiveMQ中消费者是如何接收消息的(二)

    上篇文章大致讲述了同步消费者和异步消费者接收消息的异同(详见<ActiveMQ中消费者是如何接收消息的(一)>http://manzhizhen.iteye.com/blog/209413 ...

  7. 微信小程序添加全局 socket 并接收消息通知

    最近小程序中有使用到socket,来建立长连接,实现消息通知.总结一下实现思路. 首先,在app.js中初始化socket,并处理消息,添加心跳检测. App({globalData: {suppli ...

  8. 17 个方面,综合对比 Kafka、RabbitMQ、RocketMQ、ActiveMQ 四个分布式消息队列

    点击上方"方志朋",选择"置顶公众号" 技术文章第一时间送达! 作者:28cm不含头(来自:知乎) 原文链接: https://www.zhihu.com/qu ...

  9. 实战05_SSM整合ActiveMQ支持多种类型消息

    接上一篇:实战04_SSM整合ActiveMQ支持多种类型消息https://blog.csdn.net/weixin_40816738/article/details/100572124 1.Str ...

最新文章

  1. 创新驱动未来,浪潮持续深耕信息安全市场
  2. mysqll底层分享(一):MySQL索引背后的数据结构及算法原理
  3. [Usaco2007 Dec]穿越泥地[bfs][水]
  4. integer是值传递还是引用传递_数据值Value传递-高位传递
  5. 数据结构 - 如何找到有环单链表的环的入口位置(C++)
  6. FTP的dos命令使用方法
  7. STM32半主机模式
  8. 梅林安装opkg后安装iperf3_MacBook安装双系统后手势触控问题
  9. 从零开始做Vue前端架构(5)
  10. 不服气不行,同样是码农,字节程序员的年薪居然达247万
  11. 锦州师专高等专科学校计算机,《数据库原理与应用锦州师范高等专科学校计算机系》.ppt...
  12. ffdshow 源代码分析 4: 位图覆盖滤镜(滤镜部分Filter)
  13. netron神经网络可视化
  14. oracle中树形数据,ORACLE树形数据解决方法
  15. 【2020】win10java(jdk安装)环境变量配置和相关问题解决
  16. 【强制转换】 | PTA 7.1厘米换算英尺英寸
  17. 网站地图(sitemap)如何优雅生成?
  18. domcer服务器按键显示怎么调,我的世界domcer怎么打开按键显示_我的世界按键大全...
  19. oa系统都要服务器,oa系统需要购置云服务器吗
  20. H5和webview跳转小程序

热门文章

  1. Loudrunner常用函数
  2. CGLIB介绍与原理(通过继承的动态代理)
  3. Linux 网络子系统之NAPI书签
  4. eclipse报错:Failed to load the JNI shared library
  5. GetSafeHdc( )
  6. VC++6.0和VC++2010的区别
  7. MQTT数据传输之TCP数据流程
  8. 逻辑分析仪抓取波形参数设置
  9. Android/linux(earlysuspend、lateresume)睡眠唤醒机制简
  10. 二十三、图的广度优先遍历