原创 Spring源碼閱讀之如何將標籤解析成BeanDefinition定義

上一篇文章我們講到了BeanFactory的創建和BeanDefinition的創建。本文接着上一篇文章,來看看一個<bean>標籤是如何被解析成BeanDefinition對象並註冊到BeanFactory裏面爲了方便講解,在開始<b

原创 Spring源碼閱讀系列之初始化容器整體流程介紹

上篇文章提到,因爲 Spring 源碼非常龐大,所以閱讀 Spring 源碼的最直接有效的辦法就是 Debug,後續源碼也是基於這種方式去讀。接下來看看一個最簡單的例子創建一個UserService接口和其實現類public inter

原创 Spring源碼閱讀之準備篇

引言“ 目前,在以Java語言主導的項目中,我們會使用各種各樣的框架來快速搭建應用,尤其在Java web項目中,我們會經常見到Spring的身影,大部分人只知道怎麼使用它,但是不知道它真正的運行原理。本篇文章就來揭祕一下Spring框

原创 關於公衆號內容的幾點說明

寫在前面,博主基於自己的工作情況及階段性學習總結,將自己的感悟和歷程記錄下來。歡迎大家關注,和博主一起共同進步。本公衆號的每篇文章都是基於博主自己的理解和實踐得出的一點感悟,在此記錄下來,方便以後學習。號內文章全部堅持原創,所以文章更新

原创 Spring源碼閱讀系列之obtainFreshBeanFactory()實現

接着上一篇文章,本篇來接着談談 Spring 容器的創建及 bean 定義的解析。Debug 使用的代碼和上一篇文章提供的保持一致本篇文章由於代碼調用流程較長,所以先給大家呈現一張調用流程圖,方便大家更容易理解調用層次,廢話不多說了,先

原创 Redis系列之掃盲篇(一)

作者:z小趙★ 一枚用心堅持寫原創的“無趣”程序猿,在自身受益的同時也讓朋友們在技術上有所提升。目錄Redis 是什麼?Redis 安裝。基礎命令掃盲。Redis 是什麼?Redis 是一款由 C 語言編寫的、分佈式的、高性能的、非關係

原创 Redis系列(四):天天用着Redis集羣,主從同步該知道吧?集羣工作原理是否需要了解下?...

  作者:z小趙★ 一枚用心堅持寫原創的“無趣”程序猿,在自身受益的同時也讓朋友們在技術上有所提升。前言插播一個小插曲,本來文章已經寫好準備發佈了,手賤清理了緩存導致文本內容全部丟失,以至於重新寫稿。藉此提醒廣大粉絲朋友,平時一定要養成

原创 Redis系列(五):你要的 Redis 集羣搭建來了,實踐與否你自己選!

  作者:z小趙★ 一枚用心堅持寫原創的“無趣”程序猿,在自身受益的同時也讓朋友們在技術上有所提升。前言上篇文章我們介紹了 Redis 集羣的工作原理機制,本文我們就來手動搭建一個 Redis 集羣玩玩。強烈建議大家在開始本篇文章之前先

原创 從新出發,砥礪前行(總結篇)

  作者:z小趙★ 一枚用心堅持寫原創的“無趣”程序猿,在自身受益的同時也讓朋友們在技術上有所提升。從寫公衆號到現在不知不覺已經有一段時間了,今天這篇文章不聊技術,主要回顧一下過去,以及未來公衆號在 2020 年剩下日子的寫作計劃。希望

原创 Kafka系列第4篇:消息發送時,網絡“偷偷”幫忙做的那點事兒

前言上篇文章講述了消息從生產到寫入到 Broker 的 partition 上背後發生的故事,並提出了消息發送的網絡模型的問題。本篇文章我們來嘗試揭開其背後的神祕面紗,耐心看完你一定會有所收穫。文章概覽Sender 線程的建連準備階段和

原创 重要:Kafka第3篇之一條消息如何被存儲到Broker上

前言經過上篇文章的簡單實戰之後,今天來聊聊生產者將消息從客戶端發送到 Broker 上背後發生了哪些故事,看不看由你,但是我保證可以本篇文章你一定可以學到應用背後的一些實質東西。本文我們從以下 4 個方面來探討下一條消息如何被準確的發送

原创 Kafka系列文章之安裝測試-第2篇

前言上篇文章講解了 Kafka 的基礎概念和架構,瞭解了基本概念之後,必須得實踐一波了,所謂“實踐纔是檢驗真理的唯一辦法”,後續系列關於 Kafka 的文章都以 kafka_2.11-0.9.0.0 爲例;另外爲了讓大家快速入門,本文只

原创 Spring源碼閱讀之編寫自定義標籤

基於昨天的那篇文章,我們今天來聊一個比較簡單輕鬆點的話題,今天我們來實現一個自定義的標籤。先明確下整個項目的結構,網上有很多關於自定義標籤的實現方式,但是教程包結構不清晰,導致測試無法正常進行,博主自己也栽了一個坑,爲了讓朋友們可以快速

原创 Spring容器初始化之invokeBeanFactoryPostProcessors()源碼分析

invokeBeanFactoryPostProcessors方法會實例化所有 BeanFactoryPostProcessor 以及其子類 BeanDefinitionRegistryPostProcessor。這兩個類主要針對的是B

原创 Spring源碼閱讀之初始化"非懶加載bean"實例-第4篇

0. 導讀上一篇文章分析完了bean實例的創建,本文接着來講講bean實例的初始化結尾工作,主要介紹一下幾個方面。populateBean():bean實例的屬性填充工作。autowireByName()和autowireByType(