1 Spring Framework
是Spring生態(tài)的核心,包含2個(gè)核心特性:
- 第1個(gè):
IoC控制反轉(zhuǎn),是一種編程思想,反轉(zhuǎn)資源的獲取方向,把創(chuàng)建對(duì)象和管理對(duì)象交由框架管理; - 第2個(gè):
AOP面向切面編程,是一種編程泛型,提高代碼的可維護(hù)性、可重用性和可擴(kuò)展性,降低代碼的耦合度,集中管理橫切關(guān)注點(diǎn)的代碼,提高開發(fā)效率;
2 Spring MVC
-
Spring MVC是Spring框架的一個(gè)重要組成部分,提供了一種MVC即模型視圖控制器的設(shè)計(jì)模式實(shí)現(xiàn)方式,將應(yīng)用程序的控制器層、模型層、視圖層分離,使得開發(fā)人員能夠更加高效地構(gòu)建Web應(yīng)用程序。
3 MyBatis
- MyBatis是一個(gè)數(shù)據(jù)持久層框架,提供了簡單易用的接口,通過對(duì)象關(guān)系映射
ORM讓開發(fā)者能夠更輕松地操作關(guān)系型數(shù)據(jù)庫; - 主要通過使用SQL語句和配置文件來實(shí)現(xiàn),消除了幾乎所有的
JDBC代碼和參數(shù)的手動(dòng)設(shè)置,以及對(duì)結(jié)果集的檢索。
4 Spring Boot
Spring Boot 是一個(gè)快速搭建工程環(huán)境的腳手架,核心特性有:
- 起步依賴:創(chuàng)建項(xiàng)目時(shí),會(huì)默認(rèn)添加基礎(chǔ)依賴,簡化我們自己查找依賴的過程。
- 自動(dòng)配置:在構(gòu)建
Spring應(yīng)用時(shí),只需添加相應(yīng)的場景依賴,Spring Boot就會(huì)根據(jù)添加的場景依賴自動(dòng)進(jìn)行配置,在無須額外手動(dòng)添加配置的情況下快速構(gòu)建出一個(gè)獨(dú)立的Spring應(yīng)用。 - 內(nèi)嵌
Web服務(wù):SpringBoot工程支持內(nèi)嵌的web服務(wù),可以將tomcat這樣的服務(wù)直接嵌套到web依賴中,并且可以自動(dòng)將項(xiàng)目打包,并在項(xiàng)目運(yùn)行時(shí)部署到服務(wù)器中。
5 Lombok
Lombok主要作用有兩個(gè):
- 可以通過注解自動(dòng)生成
setter()getter()toString()等方法,減少重復(fù)代碼,提高開發(fā)效率; - 通過
@Slf4j注解使用其提供的日志功能,可以有效的幫助開發(fā)者調(diào)試程序和管理服務(wù)器資源消耗.
6 Knife4j
Knife4j 主要功能為:
- 接口測試:內(nèi)置了接口測試功能,可以在文檔界面上進(jìn)行接口的測試和調(diào)試;
- 生成離線
API文檔:通過注解和頁面操作,可以直接生成API文檔,無需額外的配置和編寫文檔,提高了開發(fā)效率.
7 Spring Validation
-
Spring Validation是一個(gè)數(shù)據(jù)驗(yàn)證框架,用于對(duì)Java對(duì)象進(jìn)行校驗(yàn); - 可通過注解的方式對(duì)數(shù)據(jù)進(jìn)行校驗(yàn),避免開發(fā)人員手動(dòng)校驗(yàn)數(shù)據(jù)的同時(shí),又提高了系統(tǒng)的安全性和可靠性,有效地避免非法參數(shù)和惡意攻擊.