原创 【死磕 Spring】—– IOC 之 bean 的初始化

原文出自:http://cmsblogs.com一個 bean 經歷了 createBeanInstance() 被創建出來,然後又經過一番屬性注入,依賴處理,歷經千辛萬苦,千錘百煉,終於有點兒 bean 實例的樣子,能堪大任了,只需要經歷

原创 32 歲程序員去面試,因年齡太大被直接送走。。

在互聯網企業中,有一個奇怪的現象:年齡越大的程序員,越不敢重用!因爲大多數人覺得,程序員到了一定的年齡就不能創造太多價值,要麼當公司管理要麼改行。 不過我認爲這種想法太過片面,爲什麼人的價值要用年齡來判斷?也許到了一定年齡吃不了加班的苦,但

原创 Java必看 | 阿里巴巴總結:Java常見疑惑和陷阱

本文是淘寶 @逾輪 總結的Java常見的疑惑和陷阱。對於文中列舉的例子,希望大家都能好好跑一下看看實際結果,然後思考一下爲什麼是這個結果。相信通過實踐,大家能夠收穫更多~

原创 【死磕 Spring】—– IOC 之循環依賴處理

原文出自:http://cmsblogs.com這篇分析 doCreateBean() 第三個過程:循環依賴處理。其實循環依賴並不僅僅只是在 doCreateBean() 中處理,其實在整個加載 bean 的過程中都有涉及,所以下篇內容並不

原创 【死磕 Spring】----- IOC 之 屬性填充

原文出自:http://cmsblogs.comdoCreateBean() 主要用於完成 bean 的創建和初始化工作,我們可以將其分爲四個過程:createBeanInstance() 實例化 beanpopulateBean() 屬性

原创 【死磕 Spring】—– IOC 之開啓 bean 的實例化進程

原文出自:http://cmsblogs.com在上篇博客【死磕 Spring】----- 加載 bean 之 分析各 scope 的 bean 創建中有一個核心方法沒有講到 createBean() ,該方法的如下:protected a

原创 怎麼理解Condition?

作者:liuinsect 原文出處:http://www.liuinsect.com/?p=69在java.util.concurrent包中,有兩個很特殊的工具類,Condition和ReentrantLock,使用過的人都知道,Reen

原创 【死磕 Spring】—– IOC 之 Factory 實例化 bean

原文出自:http://cmsblogs.com這篇我們關注創建 bean 過程中的第一個步驟:實例化 bean,對應的方法爲: createBeanInstance(),如下: protected BeanWrapper create

原创 【死磕 Spring】—– IOC 之構造函數實例化 bean

原文出自:http://cmsblogs.comcreateBeanInstance() 用於實例化 bean,它會根據不同情況選擇不同的實例化策略來完成 bean 的初始化,主要包括:Supplier 回調: obtainFromSupp

原创 如何擴展和優化線程池?

作者:莫那·魯道 出處:併發編程之線程池的使用及擴展和優化多線程的軟件設計方法確實可以最大限度的發揮現代多核處理器的計算能力,提高生產系統的吞吐量和性能。但是,如果一個系統同時創建大量線程,線程間頻繁的切換上下文導致的系統開銷將會拖慢整個系

原创 多線程:爲什麼在while循環中加入System.out.println,線程可以停止

在論壇看到這樣一個代碼:public class StopThread { private static boolean stopRequested; public static void main(String[] args)

原创 【死磕 Spring】----- IOC 之解析自定義標籤

在博客 【死磕Spring】----- IOC 之 註冊 BeanDefinition 中提到:獲取 Document 對象後,會根據該對象和 Resource 資源對象調用 registerBeanDefinitions() 方法,開始註

原创 【死磕 Spring】----- IOC 之分析各 scope 的 bean 創建

在 Spring 中存在着不同的 scope,默認是 singleton ,還有 prototype、request 等等其他的 scope,他們的初始化步驟是怎樣的呢?這個答案在這篇博客中給出。singletonSpring 的 scop

原创 【死磕 Spring】----- IOC 之從單例緩存中獲取單例 bean

從這篇博客開始我們開始加載 bean 的第一個步驟,從緩存中獲取 bean,代碼片段如下: Object sharedInstance = getSingleton(beanName); if (sharedIn

原创 【死磕 Spring】----- IOC 之parentBeanFactory 與依賴處理

繼上篇博客 【死磕 Spring】----- 加載 bean 之 緩存中獲取單例 bean,如果從單例緩存中沒有獲取到單例 bean,則說明兩種情況:該 bean 的 scope 不是 singleton該 bean 的 scope 是 s