原创 JVM 系列文章之 GC 算法淺析

Java的堆結構 再介紹垃圾回收算法之前,先來看看 Java中的堆,Java裏的堆指的是用於存放 Java 對象的內存區域。JVM的堆被同一個JVM實例中所有的Java線程共享,它通常由某種自動管理機制所管理,這種機制通常叫做”垃圾回收”

原创 springboot系列文章之spring-boot-devtools實現熱部署

前言 實際開發過程中,修改應用的業務邏輯時常常需要重啓應用,這顯得非常繁瑣,降低了開發效率,所以熱部署對於開發來說顯得十分必要了 什麼是熱部署? 應用啓動後會把編譯好的Class文件加載到虛擬機中,正常情況下載項目修改了源文件是需要全部

原创 JVM 系列文章之 Full GC 和 Minor GC

Full GC Full GC 就是收集整個堆,包括新生代,老年代,永久代(在JDK 1.8及以後,永久代會被移除,換爲metaspace)等收集所有部分的模式 RednaxelaFX大在[Major GC和Full GC的區別是什麼?觸

原创 一文讀懂一個URL請求的過程是怎樣的

前言 當我們在瀏覽器中輸入一個URL訪問地址,然後瀏覽器返回給我們一個響應頁面,這內部過程到底是怎樣的呢?下面我將從以下幾個方面闡述一個 WEB請求過程到底是怎樣: - 瀏覽器緩存 - DNS域名解析 - TCP連接 - HTTP

原创 Java NIO 系列文章 (一) Buffer,Channel,Selector入門

前言 下面部分內容參考 Java NIO 系列教程-併發編程網 NIO類庫簡介 NIO 庫是在JDK 1.4中引入的,NIO 彌補了原來同步阻塞 I/O 的不足,它在標準Java代碼中提供了高速的,面向塊的I/O。NIO的核心部分主要

原创 探究MySQL中的日誌文件

前言 日誌文件記錄了影響MySQL數據庫的各種類型活動,MySQL數據庫中常見的日誌文件有錯誤日誌,二進制日誌,慢查詢日誌和查詢日誌。下面分別對他們進行介紹。 錯誤日誌 錯誤日誌文件對MySQL的啓動,運行,關閉過程進行了記錄。 mysq

原创 springboot系列文章之整合mybatis

mybatis簡介 MyBatis 是一款優秀的持久層框架,它支持定製化 SQL、存儲過程以及高級映射。MyBatis 避免了幾乎所有的 JDBC 代碼和手動設置參數以及獲取結果集。MyBatis 可以使用簡單的 XML 或註解來配置和

原创 Java NIO.2系列文章之異步通道API入門

NIO.2概覽 NIO.2也就是人們常說的 AIO,在Java 7中引入了NIO的改進版NIO 2,它是異步非阻塞的IO方式。 AIO的核心概念就是發起非阻塞方式的I/O操作,立即響應,卻不立即返回結果,當I/O操作完成時通知。 這篇文章

原创 BIO,NIO,AIO概覽

前言 本文簡單介紹一下BIO,NIO,AIO以及同步與異步,阻塞與非阻塞等概念 同步與異步 同步與異步關注的是消息通信機制 同步 同步就是發起一個調用後,等待當前調用返回,沒得到結果之前,調用不返回,就像做事一樣,事情必須一件一件做完了,

原创 springboot系列文章之整合Spring Data JPA

JPA簡介 首先來介紹一下JPA,JPA是 Java Persistence API的簡稱,中文名稱爲 Java持久層API,是官方(Sun)在JDK5.0後提出的Java 持久化規範,其目的是爲了簡化Java EE和Java SE的應用

原创 springboot系列文章之SpringBootApplication註解

前言 Springboot的啓動類可以是非常簡單,其中最關鍵的兩部分是Annotation定義(@SpringBootApplication)和類定義(SpringApplication.run),這篇文章主要分析其@SpringBoot

原创 springboot系列文章之SpringApplication詳解

前言 還是從SpringBoot的啓動類說起,這篇文章主要分析啓動類中的SpringApplication @SpringBootApplication public class Application { public st

原创 springboot系列文章之啓動時初始化數據

前言 在我們用springboot搭建項目的時候,有時候會碰到在項目啓動時初始化一些操作的需求,針對這種需求springboot(spring)爲我們提供了以下幾種方案供我們選擇: - ApplicationRunner與Command

原创 淺析Spring的IoC和DI

前言 以前學習 Spring 框架的控制反轉和依賴注入,一直很懵懂,對這兩者概念和它們之間的關係沒有一個清晰的認識,所以這篇文章詳細去探索這被人稱道的 IoC 和 DI 什麼是控制反轉 IoC的全稱是Inversion of Contro

原创 阿里雲Centos下安裝JDK+Tomcat+Mysql步驟詳解

阿里雲Centos下安裝JDK+Tomcat+Mysql步驟詳解 前言:以下我是按照Centos7的系統環境安裝的,親測可用 一.JDK的安裝步驟 軟件下載地址: JDK:http://www.oracle.com/technetw