响应式编程与Spring Boot应用开发及测试实践
1. 响应式编程基础
点击“Click here”链接会加载飞机位置报告页面。每次定期刷新时,页面会重新查询PlaneFinder并按需更新报告中的当前数据。不同的是,提供给 positions.html Thymeleaf模板显示的多个飞机位置不再是完整的阻塞列表,而是响应式流发布者,具体为 Flux 类型。
2. 响应式Thymeleaf
如今,绝大多数前端Web应用使用HTML和JavaScript开发,但仍有许多生产应用使用视图技术/模板来实现目标。Thymeleaf从三个不同层面支持响应式流(RS),开发者可按需选择:
- 可将后端处理转换为利用响应式流,让Reactor为Thymeleaf提供由发布者(如 Mono 或 Flux )提供的值,而非 Object<T> 和 Iterable<T> 。这虽不会产生响应式前端,但有助于将后端逻辑转换为使用响应式流,消除阻塞并实现服务间的流量控制。
- Thymeleaf还支持分块和数据驱动模式以支持Spring WebFlux,这两种模式都涉及使用服务器发送事件(Server Sent Events)和一些JavaScript代码将数据传输到浏览器。不过,实现预期结果所需的JavaScript代码增多,可能会使开发者从模板+HTML+JavaScript转向纯HTML+JavaScript前端逻辑。具体决策应根据需求而定。
超级会员免费看
订阅专栏 解锁全文
1064

被折叠的 条评论
为什么被折叠?



