原创 JVM系列之二:ClassLoad 詳解

類加載器的目的就是根據一個類的全限定名來讀取此類的二進制字節流到JVM中,然後轉換爲一個與目標類對應的 java.lang.Class對象實例。 當一個類加載器接收到一個類加載的任務時,先去緩存裏面找有沒有任務對象,如果沒有不會立即展開加

原创 JVM系列之一:ClassFileFormat 詳解

代碼敲了很久,但是一直沒有怎麼去研究他的整個的過,最近有時間就研究了一下,總結後就寫了JVM系列的博客,以便總結與回顧。 java從編碼到執行的過程如下圖一所示:  java 文件通過 javac 編譯後成 class 文件,class

原创 JVM系列之三:JVM之java類型生命週期詳解

前一篇文章詳細的描述了 java class 文件的格式  。它以標準的二進制形式來表現java 類型。現在我們再來看看當二進制的類型數據被導入到java虛擬機中的生命週期是什麼樣子的,下文所說的生命週期指的是 java 類型二進制的類型

原创 對 EXPLAIN 史上最詳細的解析

當我們在做優化或者遇到慢查詢時,要查看sql的執行情況,我們可以使用 explan 來進行分析 y最初優化的方向就是是否存在慢查詢,如果存在我們應該怎麼去優化這些SQL語句,今天我們就介紹一下日常中經常使用的EXPLAIN命令。 EXPL

原创 Spring面試題總結,附帶超詳細答案

1、什麼是Spring? Spring是一個開源的Java EE開發框架。Spring框架的核心功能可以應用在任何Java應用程序中,但對Java EE平臺上的Web應用程序有更好的擴展性。Spring框架的目標是使得Java EE應用程

原创 2019年JVM最新面試題

1、JVN內存結構     方法區和對是所有線程共享的內存區域;而java棧、本地方法棧和程序員計數器是運行是線程私有的內存區域。 Java堆(Heap),是Java虛擬機所管理的內存中最大的一塊。Java堆是被所有線程共享的一塊內存區

原创 synchronized 關鍵字原理(一)

java頭信息分析 下面這張圖是我截取hotspot源碼當中的註釋轉化而成 意思是java的對象頭在對象的不同狀態下會有不同的表現形式,主要有三種狀態,無鎖狀態、枷鎖狀態、gc標記狀態。那麼我們可以理解java當中的取鎖其實可以理解是給

原创 spring cloud gateway配置詳解

server:   port: 9010 #服務端口號 spring:   application:     name: micro-sdn-gateway  # 服務名稱   cloud:     gateway:       disc

原创 IDEA下Tomcat9源碼啓動運行

1.     Tomcat源碼下載 或者Git上拉取   https://github.com/apache/tomcat 2.     IDEA導入源碼 導入源碼後如圖所示 2.1     導入架包         Tomcat源碼

原创 Dubbo、SpringCloud和Kubernetse 對比選型

微服務的基礎建設:     Dubbo SpringCloud K8s 服務發現與LB ZK/Nacos+Client Eureka+Ribbon Service API網關 NA Zuul Ingress 配置管理 Diamond/N

原创 idea debug調試使用小技巧

1。設置斷點 【在你想要設置斷點的代碼行左端 鼠標左鍵點擊一下即可設置成功】   2.用Debug模式啓動調試模式 啓動成功後,發送請求進入設置斷點的方法中   3.單點調試 1》Step Over 【快捷鍵:F8】相當於eclip

原创 springboot 2.1.5 集成 通用 mapper 4.*.*

第一步:添加依賴 第二步:實體類主鍵配置 在主鍵上打@Id註解 第三步:dao繼承mapper 第四步:配置 在application.properties文件內做如下配置   做完以上四步,集成通用mapper就已經完成了! 備

原创 visio2013專業版激活密匙

 2NYF6-QG2CY-9F8XC-GWMBW-29VV8   FJ2N7-W8TXC-JB8KB-DCQ7Q-7T7V3   VXX6C-DN3HQ-3CRXG-RF4KT-YG7V3   B3C7Q-D6NH2-2VRFW-HHWD