Cglib和jdk動態(tài)代理說到cglib技術(shù),使用的就是增強類Enhancer,底層使用的ASM技術(shù).下面舉例說明共同的類,一個接口(JDK動態(tài)代理準備的,CGlib不需要接...

Cglib和jdk動態(tài)代理說到cglib技術(shù),使用的就是增強類Enhancer,底層使用的ASM技術(shù).下面舉例說明共同的類,一個接口(JDK動態(tài)代理準備的,CGlib不需要接...
前言 SpringBoot是Spring的包裝撑柔,通過自動配置使得SpringBoot可以做到開箱即用南吮,上手成本非常低辫塌,但是學習其實現(xiàn)原理的成本大大增加逆皮,需要先了解熟悉Spri...
源碼版本 作者Spring Boot是基于2.4.0帮碰。每個版本有些變化,讀者盡量和我保持一致拾积,以防源碼有些出入殉挽。 從哪入手丰涉? 相信很多人嘗試讀過Spring Boot的源碼,...
Java有很多種鎖:公平鎖、非公平鎖冠骄、可重入鎖伪煤、遞歸鎖、自旋鎖凛辣、讀鎖抱既、寫鎖、等等 公平和非公平鎖 java.util.concurrent.locks.ReentrantLo...
Synchronized 用的鎖是存在Java對象頭里的扁誓,那么什么是對象頭呢防泵? 我們以 Hotspot 虛擬機為例,Hopspot 對象頭主要包括兩部分數(shù)據(jù):Mark Wor...
線程狀態(tài): 創(chuàng)建狀態(tài):創(chuàng)建一個線程實例 Thread thread = new Thread();就緒狀態(tài):在調(diào)用start()方法后蝗敢,線程獲取了除CPU的其他資源,處于就緒...
synchronized 在 JDK 1.5 時性能是比較低的寿谴,然而在后續(xù)的版本中經(jīng)過各種優(yōu)化迭代肚邢,它的性能也得到了前所未有的提升,之前說到過鎖膨脹對 synchronize...
HashMap在JDK1.8和JDK1.7的區(qū)別 結(jié)論 先說結(jié)論拭卿,HashMap在1.7和1.8中最大的區(qū)別就是底層數(shù)據(jù)結(jié)構(gòu)的變化,在1.7中HashMap采用的底層數(shù)據(jù)結(jié)構(gòu)...