摘要:使用則需要及以上版本。開發(fā)使用框架七系列教程目錄系列教程大綱快速入門實(shí)踐實(shí)踐整合整合中和實(shí)踐整合中實(shí)現(xiàn)緩存中實(shí)現(xiàn)通信集成測(cè)試及部署實(shí)戰(zhàn)圖書管理系統(tǒng)
WebFlux 系列教程大綱 一、背景
大家都知道,Spring Framework 是 Java/Spring 應(yīng)用程序跨平臺(tái)開發(fā)框架,也是 Java EE(Java Enterprise Edition) 輕量級(jí)框架,其 Spring 平臺(tái)為 Java 開發(fā)者提供了全面的基礎(chǔ)設(shè)施支持。 雖然 Spring 基礎(chǔ)組件的代碼是輕量級(jí),但其配置依舊是重量級(jí)的。
那是怎么解決了呢?當(dāng)然是 Spring Boot,Spring Boot 提供了新的編程模式,讓開發(fā) Spring 應(yīng)用變得更加簡(jiǎn)單方便。本書將會(huì)由各個(gè)最佳實(shí)踐工程出發(fā),涉及 Spring Boot 開發(fā)相關(guān)的各方面。下面先了解下 Spring Boot 框架。
二、Spring Boot 是什么Spring Boot (Boot 顧名思義,是引導(dǎo)的意思)框架是用于簡(jiǎn)化 Spring 應(yīng)用從搭建到開發(fā)的過程。應(yīng)用開箱即用,只要通過一個(gè)指令,包括命令行 java -jar 、SpringApplication 應(yīng)用啟動(dòng)類 、 Spring Boot Maven 插件等,就可以啟動(dòng)應(yīng)用了。另外,Spring Boot 強(qiáng)調(diào)只需要很少的配置文件,所以在開發(fā)生產(chǎn)級(jí) Spring 應(yīng)用中,讓開發(fā)變得更加高效和簡(jiǎn)易。目前,Spring Boot 版本是 2.x 版本。
三、Spring Boot WebFlux 是什么可以看到上面的圖,WebFlux 相對(duì) MVC 一樣重要。大多數(shù)場(chǎng)景使用 MVC 都是阻塞式的,WebFlux 使用的場(chǎng)景是異步非阻塞的。那什么是響應(yīng)式編程(Reactive Programming)?
官方文檔這樣描述:響應(yīng)式編程是基于異步和事件驅(qū)動(dòng)的非阻塞程序,只是垂直通過在 JVM 內(nèi)啟動(dòng)少量線程擴(kuò)展,而不是水平通過集群擴(kuò)展。
Spring Boot 2.0 包括一個(gè)新的 spring-webflux 模塊。該模塊包含對(duì)響應(yīng)式 HTTP 和 WebSocket 客戶端的支持,以及對(duì) REST,HTML 和 WebSocket 交互等程序的支持。
四、為什么學(xué)習(xí) Spring Boot WebFlux微服務(wù)架構(gòu)越來越火,Spring Boot 是一大趨勢(shì),因?yàn)?Spring Cloud 是基于 Spring Boot 的。所以學(xué)好 Spring Boot WebFlux 會(huì)受益匪淺。
從編程來講,雖然阻塞式編程是避免不了的,但是 Reactive 編程在大多數(shù)場(chǎng)景,能夠提高資源利用率。所以,學(xué)習(xí) WebFlux ,尤其某些 IO 密集型場(chǎng)景很剛需。
五、本系列教程可以學(xué)到什么本課程是一個(gè)系列基礎(chǔ)教程,目標(biāo)是帶領(lǐng)讀者上手實(shí)戰(zhàn),課程以新版本 Spring Boot 2.0 WebFlux 的核心概念作為主線。圍繞 Spring Boot 2.0 WebFlux 技術(shù)棧的系列教程,目標(biāo)是帶領(lǐng)讀者了解 Spring Boot 2.0 WebFlux 各種特性,并學(xué)會(huì)使用 Spring Boot 相關(guān)技術(shù)棧上手開發(fā)項(xiàng)目。尤其對(duì)于微服務(wù)下,如果是 IO 密集型等場(chǎng)景,可以考慮使用 WebFlux 去實(shí)現(xiàn)。
主要包含知識(shí)點(diǎn):快速入門、CRUD 、Mongodb Reactive、Thymeleaf、Redis、WebSocket 等,一步一步了解每個(gè)組件的使用方式,最后綜合演練。
認(rèn)真學(xué)完這個(gè)系列文章之后,會(huì)對(duì) Spring Boot 2.0 WebFlux 有進(jìn)一步的了解,具備使用 Spring Boot 2.0 WebFlux 上手進(jìn)行開發(fā)的基本能力。
我早期寫的文章可以看我的 GitHub:github.com/JeffLi1993
六、適合閱讀的人群本 GitChat 課程適合以下人群閱讀:
Spring Boot 2.0 WebFlux 新版本的初學(xué)人員
對(duì) Spring Boot 2.0 WebFlux 開發(fā)感興趣的開發(fā)人員
希望了解 Spring Boot 2.0 WebFlux 的研發(fā)人員
版本使用 Spring Boot 2.0.1.RELEASE 版本進(jìn)行開發(fā)演示,技術(shù)人員需要具備 Maven、Git 基本技能。
開發(fā)運(yùn)行環(huán)境:
JDK 1.8+ Spring Boot 2.x 要求 JDK 1.8 環(huán)境及以上版本。另外,Spring Boot 2.x 只兼容 Spring Framework 5.0 及以上版本。
Maven 3.2+ 為 Spring Boot 2.x 提供了相關(guān)依賴構(gòu)建工具是 Maven,版本需要 3.2 及以上版本。使用 Gradle 則需要 1.12 及以上版本。Maven 和 Gradle 大家各自挑選下喜歡的就好。
IntelliJ IDEA IntelliJ IDEA (簡(jiǎn)稱 IDEA)是常用的開發(fā)工具,也是本書推薦使用的。同樣使用 Eclipse IDE 自然也是可以的。
開發(fā)使用框架:
Mongodb
Redis
Thymeleaf
WebSocket
七、系列教程目錄《01:WebFlux 系列教程大綱》
《02:WebFlux 快速入門實(shí)踐》
《03:WebFlux Web CRUD 實(shí)踐》
《04:WebFlux 整合 Mongodb》
《05:WebFlux 整合 Thymeleaf》
《06:WebFlux 中 Thymeleaf 和 Mongodb 實(shí)踐》
《07:WebFlux 整合 Redis》
《08:WebFlux 中 Redis 實(shí)現(xiàn)緩存》
《09:WebFlux 中 WebSocket 實(shí)現(xiàn)通信》
《10:WebFlux 集成測(cè)試及部署》
《11:WebFlux 實(shí)戰(zhàn)圖書管理系統(tǒng)》
文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請(qǐng)注明本文地址:http://specialneedsforspecialkids.com/yun/74245.html
摘要:響應(yīng)式編程是基于異步和事件驅(qū)動(dòng)的非阻塞程序,只是垂直通過在內(nèi)啟動(dòng)少量線程擴(kuò)展,而不是水平通過集群擴(kuò)展。三特性常用的生產(chǎn)的特性如下響應(yīng)式編程模型適用性內(nèi)嵌容器組件還有對(duì)日志消息測(cè)試及擴(kuò)展等支持。 摘要: 原創(chuàng)出處 https://www.bysocket.com 「公眾號(hào):泥瓦匠BYSocket 」歡迎關(guān)注和轉(zhuǎn)載,保留摘要,謝謝! 02:WebFlux 快速入門實(shí)踐 文章工程: JDK...
摘要:在配置下上面啟動(dòng)的配置數(shù)據(jù)庫名為賬號(hào)密碼也為。突出點(diǎn)是,即非阻塞的。四對(duì)象修改包里面的城市實(shí)體對(duì)象類。修改城市對(duì)象,代碼如下城市實(shí)體類城市編號(hào)省份編號(hào)城市名稱描述注解標(biāo)記對(duì)應(yīng)庫表的主鍵或者唯一標(biāo)識(shí)符。 摘要: 原創(chuàng)出處 https://www.bysocket.com 「公眾號(hào):泥瓦匠BYSocket 」歡迎關(guān)注和轉(zhuǎn)載,保留摘要,謝謝! 這是泥瓦匠的第104篇原創(chuàng) 文章工程: JDK...
摘要:挺多人咨詢的,異常處理用切面注解去實(shí)現(xiàn)去全局異常處理。全局異常處理類,代碼如下代碼解析如下抽象類是用來處理全局錯(cuò)誤時(shí)進(jìn)行擴(kuò)展和實(shí)現(xiàn)注解標(biāo)記的切面排序,值越小擁有越高的優(yōu)先級(jí),這里設(shè)置優(yōu)先級(jí)偏高。 本文內(nèi)容 為什么要全局異常處理? WebFlux REST 全局異常處理實(shí)戰(zhàn) 小結(jié) 摘錄:只有不斷培養(yǎng)好習(xí)慣,同時(shí)不斷打破壞習(xí)慣,我們的行為舉止才能夠自始至終都是正確的。 一、為什么要全局...
摘要:數(shù)據(jù)和信息是不可分離的,數(shù)據(jù)是信息的表達(dá),信息是數(shù)據(jù)的內(nèi)涵。數(shù)據(jù)本身沒有意義,數(shù)據(jù)只有對(duì)實(shí)體行為產(chǎn)生影響時(shí)才成為信息。主要目標(biāo)是為開發(fā)提供天然的模板,并且能在里面準(zhǔn)確的顯示。目前是自然更加推薦。 這是泥瓦匠的第105篇原創(chuàng) 文章工程: JDK 1.8 Maven 3.5.2 Spring Boot 2.1.3.RELEASE 工程名:springboot-webflux-4-thym...
摘要:一個(gè)簡(jiǎn)單的用戶管理的已經(jīng)完成,現(xiàn)在我們需要在頁面上展示,方便用戶管理。創(chuàng)建首頁頁面首頁歡迎頁面首頁實(shí)戰(zhàn)課程你想學(xué)點(diǎn)啥上班摸魚下班充電案例上手本課程是一個(gè)系列基礎(chǔ)教程,目標(biāo)是帶領(lǐng)讀者上手實(shí)戰(zhàn),課程以新版本的核心概念作為主線。 一個(gè)簡(jiǎn)單的用戶管理的CRUD已經(jīng)完成,現(xiàn)在我們需要在頁面上展示,方便用戶管理。盡管現(xiàn)在已經(jīng)流行前后分離開發(fā),但是在一些小公司做的項(xiàng)目并不需要前端開發(fā)人員,頁面也是后...
閱讀 1906·2021-11-22 14:44
閱讀 1672·2021-11-02 14:46
閱讀 3657·2021-10-13 09:40
閱讀 2599·2021-09-07 09:58
閱讀 1586·2021-09-03 10:28
閱讀 1658·2019-08-29 15:30
閱讀 976·2019-08-29 15:28
閱讀 1468·2019-08-26 12:20