当前位置:网站首页 > R语言数据分析 > 正文

spring webflux适用于什么场景(spring-webflux)



命令(Command)模式是指将请求封装成为一个对象,使发出请求和执行请求的责任分割开,方便将命令对象进行存储、传递、调用、增加与管理

也就是将发送者、接收者和调用命令封装成独立的对象,来供客户端调用。属于行为模式的一种。

命令模式将发送者与接受者完全解耦,发送者与接收者之间没有直接的联系,发送者只需要如何发送请求,而不需要关心请求是如何完成的。下面就来看看命令模式的结构和实现:

将调用者和实现者进行分离,其结构如下所示:

spring 也有一个shell模式_java

  • :抽象命令角色,声明执行命令的接口
  • :具体命令角色,是抽象命令角色的具体实现类
  • :具体实现,具体命令对象的真正实现者
  • :调用者,处理命令、实现命令的具体操作者,负责对外提供命令服务
  • :客户端

根据上面的结构图,可以实现如下代码:

最后的客户端运行结果为:

下面来看看命令模式的应用场景

本文选取的Spring版本是5.3.1,来看看类中的方法:

spring 也有一个shell模式_ide_02

我们看到,上面的方法中定义了一个内部类,并实现了接口,点开查看详细内容:

回到方法中,我们发现最后返回的中是将内部类当做参数进行返回。这里就相当于命令模式中的具体命令对象,而则是抽象命令对象。比如还有其他具体命令实现类,比如、等等:

spring 也有一个shell模式_spring 也有一个shell模式_03

看看方法,为了方便理解,代码做了精简:

根据上面的代码,可以梳理整个执行流程:

spring 也有一个shell模式_java_04

实际上这个类是调用者(Invoker)、实现者(Receiver)和具体命令实现(Concrete Command)的集合, 则是命令的抽象接口。

模拟在餐厅中点餐交给初始烹饪的场景,在该场景中点餐人员只需要把需要点的各种菜系交给服务员,服务员再把各项菜品交给厨师进行烹饪。如下图所示:

spring 也有一个shell模式_spring 也有一个shell模式_05

我们先分析一下,命令是菜品具体实现是菜系,命令实现是厨师,调用者是服务员。所以该场景下的命令模式结构应该为:

spring 也有一个shell模式_java_06

代码目录结构为:

具体代码如下:

  1. 抽象命令者及其具体实现
  1. 抽象实现者及其具体实现
  1. 调用者及客户端

最终测试结果如下:

到此这篇spring webflux适用于什么场景(spring-webflux)的文章就介绍到这了,更多相关内容请继续浏览下面的相关 推荐文章,希望大家都能在编程的领域有一番成就!

版权声明


相关文章:

  • durid(druid未授权访问漏洞修复)2025-11-10 21:54:10
  • xavier名字(xavier名字寓意)2025-11-10 21:54:10
  • hiprint官网(hippter官网)2025-11-10 21:54:10
  • resnet模型(resnet模型怎么读)2025-11-10 21:54:10
  • no switchport命令(no switchport access)2025-11-10 21:54:10
  • 数组方法filters(数组方法some和every)2025-11-10 21:54:10
  • springwebflux原理(spring webflux mono)2025-11-10 21:54:10
  • redhat安装教程(redhat如何安装)2025-11-10 21:54:10
  • swagger2配置security(swagger2配置不生效)2025-11-10 21:54:10
  • rasied(rasie的意思)2025-11-10 21:54:10
  • 全屏图片