天天看點

《如何建構Spring5源碼閱讀環境》1.什麼是Spring?2.建構前準備3.開始建構4.測試5.總結

說在前頭:本人為大二在讀學生,書寫文章的目的是為了對自己掌握的知識和技術進行一定的記錄,同時樂于與大家一起分享,因本人資曆尚淺,能力有限,文章難免存在一些錯漏之處,還請閱讀此文章的大牛們見諒與斧正。若在閱讀時有任何的問題,也可通過評論提出,本人将根據自身能力對問題進行一定的解答。

1.什麼是Spring?

        Spring 架構是一個 Java 平台,為開發 Java 應用程式提供全面的基礎架構支援。Spring 處理基礎結構,是以您可以專注于應用程式。

        Spring 使您能夠從“普通的 Java 對象”(POJO)建構應用程式,并将企業服務非侵入性地應用于 POJO。此功能适用于 Java SE 程式設計模型以及全部和部分 Java EE。

        介于本文章側重點為Spring源碼的建構,對于Spring的介紹先講到這裡,若想對Spring有更深刻的了解,建議通過閱讀Spring的官方文檔或網上的Spring中文文檔進行了解。在這裡給大家列出官方文檔位址和中文文檔位址,大家自行選擇閱讀。

Spring官方文檔:https://spring.io/projects/spring-framework              Spring中文文檔:https://www.docs4dev.com/docs/zh/spring-framework/5.1.3.RELEASE/reference/overview.html#overview-spring
           

2.建構前準備

  • Spring5.0.2源碼
  • Gradle4.0
  • IntelliJ IDEA 2019.1
下載下傳Spring.5.0.2源碼              github下載下傳位址:              https://github.com/spring-projects/spring-framework/archive/v5.0.2.RELEASE.zip              如果遇到無法通路github或下載下傳時非常緩慢的問題,可以關注微信訂閱号“Bosen的技術分享棧”              回複“spring”即可擷取Spring5的源碼百度雲分享位址,              輸入擷取碼下載下傳解壓即可。将下載下傳好的源碼解壓(目錄結構如下)
           
《如何建構Spring5源碼閱讀環境》1.什麼是Spring?2.建構前準備3.開始建構4.測試5.總結
打開build.gradle檔案找到下圖對應的位置,              添加阿裡雲鏡像              maven { url "http://maven.aliyun.com/nexus/content/groups/public/"}
           
《如何建構Spring5源碼閱讀環境》1.什麼是Spring?2.建構前準備3.開始建構4.測試5.總結
《如何建構Spring5源碼閱讀環境》1.什麼是Spring?2.建構前準備3.開始建構4.測試5.總結
下載下傳Gradle4.0              因為spring5源碼項目是使用gradle建構的,              是以我們需要下載下傳gradle幫我們建構源碼閱讀環境,              這裡下載下傳官方推薦的4.0版本。通路官網進行下載下傳:              https://gradle.org/releases/              下載下傳完成後,解壓到對應的路徑即可              接下來還需配置gradle的環境變量(根據下圖配置)
           
《如何建構Spring5源碼閱讀環境》1.什麼是Spring?2.建構前準備3.開始建構4.測試5.總結
《如何建構Spring5源碼閱讀環境》1.什麼是Spring?2.建構前準備3.開始建構4.測試5.總結
《如何建構Spring5源碼閱讀環境》1.什麼是Spring?2.建構前準備3.開始建構4.測試5.總結
配置好環境變量後,打開指令行界面輸入              gradle -v              ​              若輸入資訊如下圖,即設定成功
           
《如何建構Spring5源碼閱讀環境》1.什麼是Spring?2.建構前準備3.開始建構4.測試5.總結

3.開始建構

gradle配置完成後,我們将指令行目錄切換到我們源碼的根目錄并執行              gradlew.bat(如下)              執行gradlew.bat後,項目将開始建構源代碼,如下圖即建構成功
           
《如何建構Spring5源碼閱讀環境》1.什麼是Spring?2.建構前準備3.開始建構4.測試5.總結
将源碼建構好後,我們需要将項目建構成eclipse項目,              我們繼續執行根目錄下的              import-into-eclipse.bat檔案開始建構,              網絡良好的情況下,十分鐘左右即可建構完成。建構成功後如下圖所示
           
《如何建構Spring5源碼閱讀環境》1.什麼是Spring?2.建構前準備3.開始建構4.測試5.總結
此時我們已經将spring源碼建構為eclipse項目,              我們隻需使用idea打開該項目即可(如下圖)
           
《如何建構Spring5源碼閱讀環境》1.什麼是Spring?2.建構前準備3.開始建構4.測試5.總結
《如何建構Spring5源碼閱讀環境》1.什麼是Spring?2.建構前準備3.開始建構4.測試5.總結
《如何建構Spring5源碼閱讀環境》1.什麼是Spring?2.建構前準備3.開始建構4.測試5.總結
《如何建構Spring5源碼閱讀環境》1.什麼是Spring?2.建構前準備3.開始建構4.測試5.總結
點選Ok,idea将會自動下載下傳對應的依賴,大約需等待十分鐘左右              等待idea下載下傳完成後,項目欄如上圖所示              要如何檢驗自己的項目是否以及成功建構?              方法很簡單,如下圖路徑找到ApplicationContext              然後使用快捷鍵ctrl+alt+shitl+u檢視              如果生成了下面的類關系圖即表明你的源碼建構成功
           
《如何建構Spring5源碼閱讀環境》1.什麼是Spring?2.建構前準備3.開始建構4.測試5.總結
《如何建構Spring5源碼閱讀環境》1.什麼是Spring?2.建構前準備3.開始建構4.測試5.總結

4.測試

接下來我們開始對我們建構好的spring進行使用、測試              ​              測試前我們需要對源碼進行預編譯(如下圖)
           
《如何建構Spring5源碼閱讀環境》1.什麼是Spring?2.建構前準備3.開始建構4.測試5.總結
等待預編譯完成後,就可以正式開始編寫我們的測試代碼,測試代碼結構如下              ApplicationConfig 配置類              IndexService 模拟邏輯處理類              Application 啟動類
           
《如何建構Spring5源碼閱讀環境》1.什麼是Spring?2.建構前準備3.開始建構4.測試5.總結
package com.bosen.www.config;
​
import org.springframework.context.annotation.ComponentScan;
import org.springframework.context.annotation.Configuration;
​
/**
 * <p>配置類</p>
 * @author Bosen 2021/5/15 5:52
 */
@ComponentScan("com.bosen.www")
@Configuration
public class ApplicationConfig {}
           
package com.bosen.www.service;
​
import org.springframework.stereotype.Service;
​
/**
 * <p>模拟業務邏輯處理</p>
 * @author Bosen 2021/5/15 5:54
 */
@Service
public class IndexService {
   public String test() {
      return "This is IndexService test();";
   }
}
           
package com.bosen.www;
​
import com.bosen.www.config.ApplicationConfig;
import com.bosen.www.service.IndexService;
import org.springframework.context.ApplicationContext;
import org.springframework.context.annotation.AnnotationConfigApplicationContext;
​
public class Application {
   public static void main(String[] args) {
      ApplicationContext applicationContext =
            new AnnotationConfigApplicationContext(ApplicationConfig.class);
​
      IndexService service = applicationContext.getBean(IndexService.class);
​
      System.out.println(service.test());
   }
}
           
測試程式運作結果如下
           
《如何建構Spring5源碼閱讀環境》1.什麼是Spring?2.建構前準備3.開始建構4.測試5.總結
如果程式在運作時報如下錯誤,這是因為缺失AspecrJ而導緻的,              原因可能是建構時,因為網絡問題未成功下載下傳到AspecrJ,              是以需要我們自己手動下載下傳AspecrJ,具體操作可參考下面的文章。              https://blog.csdn.net/weixin_43899635/article/details/110368806
           
《如何建構Spring5源碼閱讀環境》1.什麼是Spring?2.建構前準備3.開始建構4.測試5.總結

5.總結

        經過上面的“九九八十一難”我們終于成功建構好了Spring5的源碼,其實總的建構過程并不複雜,雖然在建構過程可能還會遇到各種錯誤,但隻要靜下心來分析錯誤原因,一步一步排查就可以很輕易的建構成功。

        那今天就講到這裡吧,剛建構好Spring5源碼的你是不是已經迫不及待的想要”一睹為快“了呢?一起加油吧!

   👇長按二維碼關注👇

《如何建構Spring5源碼閱讀環境》1.什麼是Spring?2.建構前準備3.開始建構4.測試5.總結