pd-web商城项目连接Rabbitmq服务

1 工程导入流程

1.  解压pd压缩包,到Rbbitmq Project项目包下,idea导入解压后的pd-web工程,

2.  修改pom文件版本

3.  复制pd-web工程下的pd.sql文件的绝对路径,

4.  打开SQLYog数据库,右键导入pd.sql的路径,生成pd.store数据库

 5.  确认JDK版本

 6 启动RunApp类,编辑工作目录后,再重启

 7.重启启动类后,输入url为localhost访问

8.删除这个用户,订单,商品订单三个表数据

 9.进入登陆页面,注册新用户,填写收获地址,保存,再进行购买商品操作,结算后会在pd_order和pd_order_item两个表中看到订单数据

2  修改订单,把订单发送到rabbitmq

1.pom.xml 添加 rabbitmq 依赖

        <dependency>
			<groupId>org.springframework.boot</groupId>
			<artifactId>spring-boot-starter-amqp</artifactId>
		</dependency>

2.application.yml 添加 rabbitmq 连接

  3. 启动类 (或者新建自动配置类)

    提供使用的队列参数: orderQueue,持久化,不独占,不自动删除

4.修改OrderServiceImpl,改为向Rabbitmq发送订单

   把OrderServiceImpl中64-68行注释掉,补充为以下代码:

 5. 启动pd-web工程启动类,输入url:  localhost  进入商城,登录,

  •      如果使用的是老师的rabbitmq服务就登陆他的服务,创建空间,商城下单,付款,可以在Queues栏

 

 

 6. 如果使用的是自己的ip:

  • 需要启动虚拟机,重启docker,重启rabbitmq,再回到pd-web项目重启启动类
  • 登陆商城,下单支付,会在自己rabbite服务中看到上面的波动

创建订单消费者工程

第一步:project Struct  导入消费者工程,修改pom文件中工程名称,以及配置文件端口号

 

 第二步:新建消费者类,从orderQueue 接收消息 ,调用原来的业务代码,存储订单

package com.pd;

import com.pd.pojo.PdOrder;
import com.pd.service.OrderService;
import org.springframework.amqp.rabbit.annotation.RabbitHandler;
import org.springframework.amqp.rabbit.annotation.RabbitListener;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Component;

@RabbitListener(queues = "orderQueue")//指定从哪个队列接收消息
@Component //用于自动创建实例
public class OrderConsumer {
    @Autowired
    private OrderService orderService;
    /*配合@RabbitListener 注解,指定处理消息的方法
     *一个类中,只能有一个 @RabbitHandler注解
     **/
    @RabbitHandler
    public void receive(PdOrder pdOrder) throws Exception { //接收的订单对象:pdOrder,序列化数据还原成订单对象
        orderService.saveOrder(pdOrder);  //存储订单
        System.out.println("--------------订单已存储");

    }
}

第三步:修改OrderServiceImpl

 第四步:启动消费者启动类,会将pd-web工程中商城的提交的订单存储到数据库中

注意:保持pd-web工程启动类打开,提交的订单才会使消费者工程获取并存储

 数据库订单表:

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值