开始

把static删掉
image.png

main方法主要是测试的,也删掉
image.png

OrderService

创建订单,传递一个VO进来,前端和前端的交互。
image.png
方法要做的 就是把订单的数据保存到数据库,然后给餐厅的微服务发送一条消息。

赋值
image.png
引入dao层
image.png

image.png

给下一个微服务发送消息。发送消息用dto。跟餐厅微服务交换,需要填充几个属性。

orderid必须用上面的PO里面拿
image.png
因为我们加的这个注解所以,保存后把id自动取回来了
image.png
拼装好了要发送的消息体
image.png
引入序列化的工具
image.png
把要发送的dto转成字符串。
image.png
发送消息。这里的routingKey是餐厅微服务需要声明的。
image.png

消息体本身要用字节。
image.png

controller

image.png

image.png
注入的是否正确,点击这个可以自动跳到类的实现。ctrl+alt+左键,可以回退。
image.png

image.png

image.png

image.png
加号的形式。这种方式打印和大括号占位符打印的效果是一样的。
这样打印是不对的,如果把这里的日志界别调成error或者warn,这句log它就不应该出现。
不应该出现的话,这里又拼接了字符串,又判断了它应不应该出现。这样让系统多做了无用功。
image.png
正确的方法就是用占位符进行拼接。
image.png
大括号就代表了后面的vo对象,它会自动调用它的toString方法。用占位符就没有字符串拼接 的过程,它会先判断info的日志要不要打印,如果不要打印就不进行处理,如果要打印就进行处理和拼接。
image.png

结束