原创 線程start方法和run方法的區別

文章目錄一、Thread和Runnable是什麼關係二、線程start方法和run方法的區別 在進入文章主題之前我們先來說一下Thread和Runnable是什麼關係 一、Thread和Runnable是什麼關係 Thread是

原创 Java底層之GC詳解

文章目錄一、什麼是GC二、爲什麼要了解GC三、對象被判定爲垃圾的標準四、判斷對象是否爲垃圾的算法4.1、引用計數算法4.2、可達性分析算法五、垃圾回收算法5.1、標記-清除算法5.2、複製算法5.3、標記-整理算法5.4、主流回收

原创 服務器項目部署——後臺啓動、關閉、替換踩坑

博主最近在更新自己的項目的時候,打包好jar換下之前的jar,然後準備重啓項目,遇到了些問題,網上關於這些說的不是很細節,故寫篇博客記錄下。 我們後臺啓動項目一般是:nohup java -jar 包名.jar >log.txt

原创 關於Java平臺無關性你該知道這些

文章目錄一、什麼是平臺無關性二、平臺無關性的實現我們舉個小例子三、爲什麼JVM不直接將源碼解析成機器碼去執行 一、什麼是平臺無關性 Java語言是一款跨平臺的語言,不管是在windows還是在Linux又或者是mac os,它都

原创 JVM內存模型有這篇文章就夠了

文章目錄一、你瞭解JVM內存模型嗎在這之前需要知道JVM內存模型圖——JDK1.81.1、程序計數器1.2、Java虛擬機棧(Stack)1.1.1、java.lang.StackOverflowError問題1.3、本地方法棧1

原创 一篇文章搞定JVM如何加載.class文件

文章目錄一、Java虛擬機二、.class文件加載執行流程圖三、一個類從編譯到加載再到執行的流程3.1、ClassLoader(類加載器)3.2、自定義CLassLoader3.3、類加載器的雙親委派機制先要說的爲什麼要用雙親委派

原创 數據庫之事務併發訪問引起的問題以及如何避免

文章目錄一、更新丟失二、髒讀三、不可重複讀四、幻讀4.1、RR級別下測試4.2、SERIALIZABLE級別下測試五、具體對比圖 事務併發訪問引起的問題有如下常見的: 更新丟失——mysql所有事務隔離級別在數據庫層面上均可避免

原创 數據庫之MyISAM與InnoDB鎖方面的區別

文章目錄一、數據庫鎖的分類二、MyISAM與InnoDB鎖方面的區別(一)MyISAM測試:然後測試寫(二)InnoDB測試3.1、先測試開啓讀鎖後能否讀其他的行(檢測是否爲行鎖)3.2、說明InnoDB的是行鎖,接下來測試在同一

原创 數據庫之事務的四大特性

數據庫事務的四大特性(ACID) 原子性(Atomic):事務執行的操作要麼全部執行,要麼事務回滾。 一致性(Consistency):事務應該從一個一致狀態轉變爲另一個一致狀態。一致性就是數據庫中數據應滿足完整性約束。比如轉賬

原创 數據庫之InnoDB可重複讀隔離級別下如何避免幻讀

文章目錄一、先介紹幾個概念1、什麼是當前讀2、什麼是快照讀3、什麼是mvcc二、RR級別下避免幻讀的方法三、RC級別下測試快照讀和當前讀3.1、測試快照讀3.2、測試當前讀四、RR級別下測試快照讀和當前讀五、RC、RR級別下的In

原创 數據庫之定位並優化慢查詢SQL

一、什麼是慢日誌 慢日誌:用來記錄執行比較慢的一些sql 二、優化大致思路 根據慢日誌定位慢查詢sql 使用explain等工具分析sql 修改sql或者儘量讓sql走索引 三、例子詳解 環境:Navicat for MySQ

原创 數據庫之聚集索引和非聚集索引的區別

聚集索引和非聚集索引的區別 1、聚集索引 文件中的每個搜索碼值都對應一個索引值。一個表只能創建一個聚集索引,葉子節點就是對應的數據全部列的值 數據行的物理順序與列值的順序相同,如果我們查詢id比較靠後的數據,那麼這行數據的地址在

原创 數據庫之索引結構

一般一個數據庫系統包含以下: 存儲(文件系統):將設備持久化到存儲設備當中 程序實例:對存儲進行邏輯上的管理 物理存儲關係的存儲管理模塊 優化執行效率的緩存模塊 對sql語句進行解析的SQL解析模塊 記錄操作的日誌管理模

原创 數據庫之聯合索引的最左匹配原則

覺得前邊文字太多可以直接看下邊的圖解 一、組合索引的最左匹配原則的成因 我們創建聯合索引的時候,mysql會對我們的建立索引的字段進行排序,比如順序第一個字段先進行排序,然後對第二個字段進行排序,以此類推,就類似於order b

原创 服務器配置jdk1.8環境並永久性運行

一、下載jdk壓縮包 大家可以去Oracle官網下載,不過下載比較慢,這裏我直接給出鏈接: 鏈接:jdk-8u171-linux-x64.tar.gz 提取碼:62c2 下載完後我們通過傳輸工具(博主用的是WinSCP)隨意傳輸到