Spring設計及原始碼分析

2021-07-31 08:21:13 字數 990 閱讀 4187

最近這幾天在看spring的設計與原始碼,又是把自己折磨的死去活來的。但是這麼經典的東西總是要好好體會吧,畢竟機會不多。

寫一點自己的思考和感觸吧:

問題1:ioc和di到底有什麼區別?

之前一直認為是同乙個東西,就是從不同的角度來看的,所以有了不同的名稱(主要是從李剛的那本書上看到所理解的),但是最近去官網看文件,發現了一句話不是這麼寫的,spring的文件將這二者當做了不同的概念:

the core container

consists of thespring-core,spring-beans,spring-context,spring-context-support, andspring-expression(spring expression language) modules.

thespring-coreandspring-beansmodules 

provide the fundamental parts of the framework

, including the ioc and dependency injection features. 

你可以將其等同起來看待,也可以將其分開理解。

比如說我在方法中建立的物件過多了,建立了無用的區域性變數(無意識建立的),方法呼叫的層次過多……等等這些還需要仔細考慮嗎?我想吧,應該不太用在意了,除非是在及其苛刻的條件下才需要考慮,而一般我們接觸的都是很普通的程式。但是由於個人習慣問題,我還是會考慮的,個人追求完美而已(潔癖問題)。那麼那些資料庫的字段型別還有必要區分int short long 之類的了嗎,因為到了程式中都是對應的一種型別,而硬碟又不需要節省這麼點空間,統一型別就挺好的,之前還一直追求完美的,但是現在覺得資料庫的設計也不必那麼苛刻了。其實很多公司也都已經這麼做了,我以後也應該這麼做。

看**還是隻剛開頭,等邊看邊寫吧。

spring原始碼分析 spring原始碼分析

1.spring 執行原理 spring 啟動時讀取應用程式提供的 bean 配置資訊,並在 spring 容器中生成乙份相應的 bean 配置登錄檔,然後根據這張登錄檔例項化 bean,裝配好 bean 之間的依賴關係,為上 層應用提供準備就緒的執行環境。二 spring 原始碼分析 1.1spr...

Spring 原始碼分析

public throws bean ception 到這裡最終的方法就是refresh super只是做一些初始化工作,可以忽略。以下是初始化發放做的事情 debug main adding systemproperties propertysource with lowest search pr...

spring原始碼分析

spring源 解析 一 ioc容器 url spring源 解析 二 ioc容器在web容器中的啟動 url spring源 解析 三 spring jdbc url spring源 解析 四 spring mvc url spring源 解析 五 spring aop獲取proxy url sp...