This commit is contained in:
by931
2022-09-06 22:30:37 +08:00
parent 66970f3e38
commit 3d6528675a
796 changed files with 3382 additions and 3382 deletions

View File

@@ -289,7 +289,7 @@ public class CityHandler {
<h3>Mono</h3>
<p>Mono 是什么? 官方描述如下A Reactive Streams Publisher with basic rx operators that completes successfully by emitting an element, or with an error.</p>
<p>Mono 是响应流 Publisher 具有基础 rx 操作符,可以成功发布元素或者错误,如图所示:</p>
<p><img src="assets/9e9fc4aec1e96acb7cdc942aad0967e21523363.png" alt="file" /></p>
<p><img src="assets/9e9fc4aec1e96acb7cdc942aad0967e21523363.png" alt="png" /></p>
<p>Mono 常用的方法有:</p>
<ul>
<li>Mono.create():使用 MonoSink 来创建 Mono。</li>
@@ -301,7 +301,7 @@ public class CityHandler {
<h3>Flux</h3>
<p>Flux 是什么官方描述如下A Reactive Streams Publisher with rx operators that emits 0 to N elements, and then completes (successfully or with an error).</p>
<p>Flux 是响应流 Publisher 具有基础 rx 操作符,可以成功发布 0 到 N 个元素或者错误。Flux 其实是 Mono 的一个补充,如图所示:</p>
<p><img src="assets/37dd113ad50858e41d17143911696e401523363.png" alt="file" /></p>
<p><img src="assets/37dd113ad50858e41d17143911696e401523363.png" alt="png" /></p>
<p>所以要注意:如果知道 Publisher 是 0 或 1 个,则用 Mono。</p>
<p>Flux 最值得一提的是 fromIterable 方法fromIterable(Iterable it) 可以发布 Iterable 类型的元素。当然Flux 也包含了基础的操作map、merge、concat、flatMap、take这里就不展开介绍了。</p>
<h3>控制器类 Controller</h3>
@@ -384,9 +384,9 @@ mvn clean install
</code></pre>
<p>打开 POST MAN 工具,开发必备。进行下面操作:</p>
<p>新增城市信息 POST http://127.0.0.1:8080/city</p>
<p><img src="assets/7ac13ad0583cc4e4ac49f6b9281706551523362.png" alt="file" /></p>
<p><img src="assets/7ac13ad0583cc4e4ac49f6b9281706551523362.png" alt="png" /></p>
<p>获取城市信息列表 GET http://127.0.0.1:8080/city</p>
<p><img src="assets/0fad82f29463fc7fe35900030500a0491523362.png" alt="file" /></p>
<p><img src="assets/0fad82f29463fc7fe35900030500a0491523362.png" alt="png" /></p>
<p>其他接口就不演示了。</p>
<h3>总结</h3>
<p>这里,探讨了 Spring WebFlux 的一些功能,构建没有底层数据库的基本 CRUD 工程。为了更好的展示了如何创建 Flux 流,以及如何对其进行操作,下篇内容会讲到如何操作数据存储。</p>