Spring的IoC能力是我們在項目中經(jīng)常用到的,這一塊的相關(guān)原理很有必要搞清楚。Spring的IoC功能實現(xiàn)可分為兩個階段,IoC容器啟動階段和Bean實例化階段。 我們就...
在MySQL鎖機制漫談(一)一文中,我們主要是探究了以下MySQL(主要是InnoDB)的鎖的機制,但是我們平常經(jīng)常使用的SQL語句一般都會加上什么鎖,我自己也并不太熟悉,因...
前言 數(shù)據(jù)庫鎖定機制是數(shù)據(jù)庫為了保證數(shù)據(jù)的一致性而使各種共享資源在并發(fā)訪問時變的有序的一種規(guī)則。MySQL數(shù)據(jù)庫的各種存儲引擎使用了三種的鎖定機制:行級鎖定、頁級鎖定、表級鎖...
場景描述 最近工作中遇到需要導(dǎo)一批數(shù)據(jù)到mysql中。數(shù)據(jù)以txt文件形式給出,大概有80G大小,統(tǒng)計后有三千多萬行,也即會往表里導(dǎo)入三千多萬條數(shù)據(jù)。具體該怎么辦呢?寫程序一...
前言 Java動態(tài)代理通過反射的機制實現(xiàn)在運行時,基于傳入的指定一組接口及委托類對象,動態(tài)的產(chǎn)生代理類,代理類負(fù)責(zé)將所有的方法調(diào)用分派到委托對象上反射執(zhí)行。動態(tài)代理類的創(chuàng)建十...
InnoDB存儲引擎支持事務(wù),是一個通用的、平衡了高可用與高性能的存儲引擎。它的設(shè)計目標(biāo)主要面向在線事務(wù)處理(OLTP)的應(yīng)用。它的特點有行鎖設(shè)計、支持外鍵、支持類似Orac...
ThreadLocal,線程變量,是一個以ThreadLocal對象為鍵,任意對象為值 的存儲 結(jié)構(gòu)。該結(jié)構(gòu)附著于線程之上。每個線程都保存一份原始變量的副本,每個線程對Thr...
前言 我們在JVM類加載器-原理一文中了解了JVM類加載器的基本原理?,F(xiàn)在我們一起通過ClassLoader類及其相關(guān)源碼來詳細(xì)分析、理解JVM類加載器的體系,深入理解JVM...
@風(fēng)干的饅頭 互相學(xué)習(xí)
JVM類加載器-原理虛擬機把描述類的數(shù)據(jù)從Class文件加載到內(nèi)存,并對數(shù)據(jù)進(jìn)行校驗、轉(zhuǎn)換解析和初始化,最終形成可以被虛擬機直接使用的Java類型,這就是虛擬機的類加載機制。在Java語言里,類...
@一張側(cè)面 有時候我們需要自己實現(xiàn)一個類加載器,比如如何加載從網(wǎng)絡(luò)遠(yuǎn)端傳來的字節(jié)碼流,這時候就需要了解類的加載原理,自己去覆寫findClass方法。類加載器ClassLoader的源碼分析還在寫,歡迎互相切磋
JVM類加載器-原理虛擬機把描述類的數(shù)據(jù)從Class文件加載到內(nèi)存,并對數(shù)據(jù)進(jìn)行校驗、轉(zhuǎn)換解析和初始化,最終形成可以被虛擬機直接使用的Java類型,這就是虛擬機的類加載機制。在Java語言里,類...
虛擬機把描述類的數(shù)據(jù)從Class文件加載到內(nèi)存,并對數(shù)據(jù)進(jìn)行校驗、轉(zhuǎn)換解析和初始化,最終形成可以被虛擬機直接使用的Java類型,這就是虛擬機的類加載機制。在Java語言里,類...
前言 JDK中為我們提供了一個并發(fā)線程框架,它是的我們可以在有異步任務(wù)或大量并發(fā)任務(wù)需要執(zhí)行時可以使用它提供的線程池,大大方便了我們使用線程,同時將我們從創(chuàng)建、管理線程的繁瑣...
JDK中的java.util.concurrent.atomic包提供了一系列支持無鎖線程安全修改操作的基礎(chǔ)變量。這些原子類是對volatile機制的擴展,并且提供了一系列C...
前言 JDK中的Hashtable是一個線程安全的K-V形式的容器,它實現(xiàn)線程安全的原理十分簡單,就是在所有涉及對該哈希表操作的方法上都加上了synchronized關(guān)鍵字,...
一.雙重檢查鎖定 不安全的延遲初始化方案: 第八行創(chuàng)建對象,在CPU指令層面可能分為三個步驟:memory = allocate();//1分配對象內(nèi)存空間ctorInsta...
ReentranLock從字面上理解就是可重入鎖,它支持同一個線程對資源的重復(fù)加鎖,也是我們平時在處理java并發(fā)情況下用的最多的同步組件之一(還有volatile,sync...