From a429ddfc4c9138aa128350fc89673d16752cc832 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=A4=9C=E7=81=AC=E7=9E=AC?= <2431038086@qq.com> Date: Wed, 21 Jun 2023 21:37:06 +0800 Subject: [PATCH] =?UTF-8?q?=E4=B8=8B=E5=8D=95=E6=9C=8D=E5=8A=A1=E5=8F=91?= =?UTF-8?q?=E9=80=81=E6=B6=88=E6=81=AF?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../contoller/PlaceOrderController.java | 27 ++++++++++++++++--- 1 file changed, 23 insertions(+), 4 deletions(-) diff --git a/a-rabbitMQ/placeOrder/src/main/java/com/shun/placeOrder/contoller/PlaceOrderController.java b/a-rabbitMQ/placeOrder/src/main/java/com/shun/placeOrder/contoller/PlaceOrderController.java index c24a116..ad623c6 100644 --- a/a-rabbitMQ/placeOrder/src/main/java/com/shun/placeOrder/contoller/PlaceOrderController.java +++ b/a-rabbitMQ/placeOrder/src/main/java/com/shun/placeOrder/contoller/PlaceOrderController.java @@ -1,7 +1,9 @@ package com.shun.placeOrder.contoller; import com.shun.placeOrder.client.*; +import com.shun.placeOrder.config.RabbitMQConfig; import jakarta.annotation.Resource; +import org.springframework.amqp.rabbit.core.RabbitTemplate; import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.RestController; @@ -23,6 +25,9 @@ public class PlaceOrderController { @Resource StockClient stockClient; + @Resource + RabbitTemplate rabbitTemplate; + @GetMapping("po") public String po(){ long start = System.currentTimeMillis(); @@ -30,15 +35,29 @@ public class PlaceOrderController { stockClient.delStock(); // 调用订单服务 创建订单 orderClient.create(); + + //feginToBu(); + + mqToBo(); + + long end = System.currentTimeMillis(); + System.out.println("耗时:" + (end - start)); + return "PlaceOrderController finish"; + + } + + private void mqToBo() { + String userAndOrderInfo = "用户信息&订单信息&优惠券信息等等…………"; + // 将同步方式修改为基于RabbitMQ的异步方式 + rabbitTemplate.convertAndSend(RabbitMQConfig.PLACE_ORDER_EXCHANGE,"",userAndOrderInfo); + } + + private void feginToBu() { // 调用优惠券服务,预扣除优惠券 couponClient.coupon(); // 调用用户积分服务,预扣除用户积分 integralClient.up(); // 调用商家服务,通知商家用户已下单 businessClient.notifyBusiness(); - long end = System.currentTimeMillis(); - System.out.println("耗时:" + (end - start)); - return "PlaceOrderController finish"; - } }