使用 Spring Boot 2.0 + WebFlux 實現(xiàn) RESTful API功能
概述
什么是 Spring WebFlux, 它是一種異步的, 非阻塞的, 支持背壓(Back pressure)機制的Web 開發(fā)框架. 要深入了解 Spring WebFlux, 首先要了知道 Reactive Stream . 另一種編程姿勢, 和命令式編程相對的姿勢.
WebFlux 支持兩種編程風(姿)格(勢)
- 使用 @Controller 這種基于注解的姿勢, 與Sring MVC的姿勢相同
- 基于Java 8 Lambda的函數(shù)式編程風格
注意: 上面只是兩種編程的姿勢, 和"普通話和重慶話都是中國話"是一個道理. 我們公司也有外地的, 對他我說普通話, 對本地同事說重慶話. 這叫多態(tài)
創(chuàng)建項目
通過 http://start.spring.io 創(chuàng)建項目骨架.
如果是手工配置, 需要添加Spring的里程碑(Milestone)倉庫:
<repositories>
<repository>
<id>spring-snapshots</id>
<name>Spring Snapshots</name>
<url>https://repo.spring.io/snapshot</url>
<snapshots>
<enabled>true</enabled>
</snapshots>
</repository>
<repository>
<id>spring-milestones</id>
<name>Spring Milestones</name>
<url>https://repo.spring.io/milestone</url>
<snapshots>
<enabled>false</enabled>
</snapshots>
</repository>
</repositories>
<pluginRepositories>
<pluginRepository>
<id>spring-snapshots</id>
<name>Spring Snapshots</name>
<url>https://repo.spring.io/snapshot</url>
<snapshots>
<enabled>true</enabled>
</snapshots>
</pluginRepository>
<pluginRepository>
<id>spring-milestones</id>
<name>Spring Milestones</name>
<url>https://repo.spring.io/milestone</url>
<snapshots>
<enabled>false</enabled>
</snapshots>
</pluginRepository>
</pluginRepositories>
測試
列舉所有用戶
創(chuàng)建用戶
獲取單個用戶
修改
刪除
源碼
demo-spring-boot-webflux-annotaion
總結(jié)
以上所述是小編給大家介紹的使用 Spring Boot 2.0 + WebFlux 實現(xiàn) RESTful API功能,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復(fù)大家的。在此也非常感謝大家對腳本之家網(wǎng)站的支持!
相關(guān)文章
java實現(xiàn)文件分片上傳并且斷點續(xù)傳的示例代碼
本文主要介紹了java實現(xiàn)文件分片上傳并且斷點續(xù)傳的示例代碼,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧2023-05-05
springboot項目讀取resources目錄下的文件的9種方式
本文主要介紹了springboot項目讀取resources目錄下的文件的9種方式,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧2023-04-04
Java中實現(xiàn)定時任務(wù)的兩種方法舉例詳解
這篇文章主要給大家介紹了關(guān)于Java中實現(xiàn)定時任務(wù)的兩種方法,文中總結(jié)了各種實現(xiàn)方式的優(yōu)缺點,并給出了推薦的使用場景,通過代碼介紹的非常詳細,需要的朋友可以參考下2024-12-12
Java基礎(chǔ)總結(jié)之Thymeleaf詳解
Thymeleaf是一種現(xiàn)代的基于服務(wù)器端的Java模板引擎技術(shù),也是一個優(yōu)秀的面向Java的XML、XHTML、HTML5頁面模板,它具有豐富的標簽語言、函數(shù)和表達式,在使用Spring Boot框架進行頁面設(shè)計時,一般會選擇Thymeleaf模板,需要的朋友可以參考下2021-05-05

