整合

用spring进行简化

1.添加jar包

<dependency>
<groupId>org.springframework</groupId>
                        <artifactId>spring-jms</artifactId>
            </dependency>

<dependency>
            <groupId>org.springframework</groupId>
            <artifactId>spring-context-support</artifactId>
        </dependency>
<dependency>
<groupId>org.apache.activemq</groupId>
<artifactId>activemq-all</artifactId>
</dependency>

2.spring中的配置

<!-- 真正可以产生Connection的ConnectionFactory,由对应的 JMS服务厂商提供 -->

<bean id="targetConnectionFactory" class="org.apache.activemq.ActiveMQConnectionFactory">
        <property name="brokerURL" value="tcp://192.168.25.168:61616" />
    </bean>
    <!-- Spring用于管理真正的ConnectionFactory的ConnectionFactory -->

<bean id="connectionFactory"
        class="org.springframework.jms.connection.SingleConnectionFactory">
        <!-- 目标ConnectionFactory对应真实的可以产生JMS Connection的ConnectionFactory -->
        <property name="targetConnectionFactory" ref="targetConnectionFactory" />
    </bean>
......

3.商品添加发一条信息给索引库的调用处

  1. shopping_manager_service进行发送消息
 // 6、向商品描述表插入数据
        this.itemDescMapper.insert(itemDesc);
//      开始进行消息的发送
        jmsTemplate.send(topicDestination, new MessageCreator() {
            @Override
            public Message createMessage(Session session) throws JMSException {
                //创建一个消息对象并返回
                TextMessage textMessage = session.createTextMessage(itemId+"");
                return textMessage;
            }
        });

4.shopping_search_service进行调用

  1. ItemAddMessageListener类来完成
  2. 要在xml文档中进行配置
  3. 根据文档查我们需要的SearchItem需要进行配置 SearchItem getItemById(long itemId); mapperxml文件也需要进行重写

results matching ""

    No results matching ""