Spring框架是一個開放源代碼的J2EE應用程序框架,由Rod Johnson發(fā)起,是針對bean的生命周期進行管理的輕量級容器(lightweight container)。
Spring解決了開發(fā)者在J2EE開發(fā)中遇到的許多常見的問題,提供了功能強大IOC、AOP及Web MVC等功能。Spring可以單獨應用于構(gòu)筑應用程序,也可以和Struts、Webwork、Tapestry等眾多Web框架組合使用,并且可以與 Swing等桌面應用程序AP組合。
因此, Spring不僅僅能應用于J2EE應用程序之中,也可以應用于桌面應用程序以及小應用程序之中。
Spring框架主要由七部分組成,分別是 Spring Core、 Spring AOP、 Spring ORM、 Spring DAO、Spring Context、 Spring Web和 Spring Web MVC。
其次,無需多言,這張圖表很好地解釋了 Spring 在 Java 生態(tài)系統(tǒng)中的主導地位。10 開發(fā)人員中就有 4 能在其應用中使用 Spring Boot,而緊隨其后的便是Spring MVC 框架。
Spring是什么意思?
現(xiàn)在,讓我們一起來嘗試下Spring 快速入門指南吧!
第一步:啟動一個新的 Spring Boot 項目
利用啟動.spring.io創(chuàng)建一個“網(wǎng)絡”項目。在“依賴項”對話框中搜索并添加“web”依賴項,如屏幕截圖所示。點擊“生成”按鈕,下載 zip,然后將其解壓縮到計算機上的文件夾中。
創(chuàng)建的項目啟動.spring.io包含彈簧靴,一個使 Spring 準備好在您的應用程序中工作的框架,但不需要太多代碼或配置。Spring Boot 是啟動 Spring 項目的最快和最流行的方式。
第 2 步:添加您的代碼
在 IDE 中打開項目并在文件夾DemoApplication.java中找到該文件
src/main/java/com/example/demo。現(xiàn)在通過添加下面代碼中顯示的額外方法和注釋來更改文件的內(nèi)容。您可以復制并粘貼代碼或直接輸入。
hello()我們添加的方法旨在獲取一個名為 的字符串參數(shù)name,然后將該參數(shù)與"Hello"代碼中的單詞結(jié)合起來。這意味著如果您“Amy”在請求中將您的姓名設置為,則響應將為“Hello Amy”.
@RestController注釋告訴 Spring 這段代碼描述了一個應該在 web 上可用的端點。@GetMapping(“/hello”)告訴 Spring 使用我們的方法hello()來回答發(fā)送到該
http://localhost:8080/hello地址的請求。最后,@RequestParam告訴 Springname在請求中期待一個值,但如果它不存在,它將默認使用單詞“World”。
第 3 步:嘗試一下
讓我們構(gòu)建并運行程序。打開命令行(或終端)并導航到您擁有項目文件的文件夾。我們可以通過發(fā)出以下命令來構(gòu)建和運行應用程序:
macOS/Linux:
./mvnw spring-boot:run
視窗:
mvnw spring-boot:run
您應該會看到一些與此非常相似的輸出:
這里的最后幾行告訴我們春天已經(jīng)開始了。Spring Boot 的嵌入式 Apache Tomcat 服務器充當 Web 服務器,并正在偵聽localhostport上的請求8080。打開瀏覽器,在頂部的地址欄中輸入http://localhost:8080/你好. 你應該得到一個很好的回應,如下所示:
Spring能做什么
微服務
微服務架構(gòu)是“新常態(tài)”。構(gòu)建小型、獨立、可立即運行的應用程序可以為您的代碼帶來極大的靈活性并增加彈性。Spring Boot 的許多專用功能使您可以輕松地在生產(chǎn)環(huán)境中大規(guī)模構(gòu)建和運行微服務。別忘了,沒有微服務架構(gòu)是不完整的春云? 簡化管理并提高容錯能力。
反應性
反應式系統(tǒng)具有某些特性,使其成為低延遲、高吞吐量工作負載的理想選擇。Project Reactor 和 Spring 產(chǎn)品組合協(xié)同工作,使開發(fā)人員能夠構(gòu)建響應式、彈性、彈性和消息驅(qū)動的企業(yè)級反應式系統(tǒng)。
云
開發(fā)分布式系統(tǒng)可能具有挑戰(zhàn)性。復雜性從應用層轉(zhuǎn)移到網(wǎng)絡層,需要服務之間更大的交互。使您的代碼“云原生”意味著處理12因子諸如外部配置、無狀態(tài)、日志記錄和連接到支持服務等問題。Spring Cloud 項目套件包含使用應用程序在云中運行所需的許多服務。
網(wǎng)絡應用程序
Spring 使構(gòu)建 Web 應用程序變得快速而輕松。通過刪除與 Web 開發(fā)相關(guān)的大部分樣板代碼和配置,您可以獲得一個現(xiàn)代 Web 編程模型,該模型可以簡化服務器端 HTML 應用程序、REST API 和基于事件的雙向系統(tǒng)的開發(fā)。
無服務器
無服務器應用程序利用現(xiàn)代云計算功能和抽象讓您專注于邏輯而不是基礎(chǔ)設施。在無服務器環(huán)境中,您可以專注于編寫應用程序代碼,而底層平臺負責擴展、運行時間、資源分配、安全性和其他“服務器”細節(jié)。
事件驅(qū)動
事件驅(qū)動的系統(tǒng)反映了現(xiàn)代企業(yè)的實際運作方式——每天都在發(fā)生成千上萬的小變化。Spring 處理事件并使開發(fā)人員能夠圍繞它們構(gòu)建應用程序的能力意味著您的應用程序?qū)⑴c您的業(yè)務保持同步。Spring 有許多事件驅(qū)動選項可供選擇,從集成和流式傳輸一直到云功能和數(shù)據(jù)流。
批
批處理高效處理大量數(shù)據(jù)的能力使其成為許多用例的理想選擇。Spring Batch 行業(yè)標準處理模式的實現(xiàn)使您可以在 JVM 上構(gòu)建健壯的批處理作業(yè)。從 Spring 產(chǎn)品組合中添加 Spring Boot 和其他組件可讓您構(gòu)建任務關(guān)鍵性批處理應用程序。
重要提醒: Spring 中國教育管理中心已攜手 VMware 全球最新 Spring技術(shù)和認證體系,幫助中國院校構(gòu)建專業(yè)教學內(nèi)容,全面賦能未來開發(fā)人。
Spring Professional認證旨在測試和驗證學生對 Spring 和 Spring Boot核心方面的理解和熟悉程度,例如:配置、組件掃描、AOP、數(shù)據(jù)訪問和事務、REST、安全、自動配置、執(zhí)行器、 Spring boot測試等。
審核編輯 黃昊宇
-
框架
+關(guān)注
關(guān)注
0文章
399瀏覽量
17434 -
spring
+關(guān)注
關(guān)注
0文章
338瀏覽量
14309
發(fā)布評論請先 登錄
相關(guān)推薦
評論