原创 Java併發控制:ReentrantLock Condition使用詳解

Java併發控制:ReentrantLock Condition使用詳解 生產者-消費者(producer-consumer)問題,也稱作有界緩衝區(bounded-buffer)問題,兩個進程共享一個公共的固定大小的

原创 java線程之間的通信方式

引言 當多個線程需要協作來完成一件事情的時候,如何去等待其他線程執行,又如何當線程執行完去通知其他線程結束等待。 線程與進程的區別 進程可以獨立運行,它是系統進行資源分配和調度的獨立單位。 線程是進程的一個實體,是CPU調度和分派的基本

原创 使用Java8的fuction函數式編程例子

前言 由於這段時間使用SpringBoot的原因,很多東西都用了SpringBoot內部的Template來做,也沒關心底層怎麼操作的。最近忙裏偷閒回答了幾個問題,正巧看到一個關於Redis資源釋放問題的,引起了我的興趣,便去看了下官方文

原创 Java多線程-線程池ThreadPoolExecutor的submit返回值Future

起 原文地址 http://blog.csdn.net/qq_25806863/article/details/71214033 一般使用線程池執行任務都是調用的execute方法,這個方法定義在Executor接口中: publi

原创 使用攔截器記錄你的SpringBoot的請求日誌

請求日誌幾乎是所有大型企業級項目的必要的模塊,請求日誌對於我們來說後期在項目運行上線一段時間用於排除異常、請求分流處理、限制流量等。請求日誌一般都會記錄請求參數、請求地址、請求狀態(Status Code)、SessionId、請求方法

原创 Jdk8 Optional 的使用

在實習過程中,閱讀項目源碼的時候看到了Optional的用法,將返回的類進行包裝,調用Optional類中的一些方法。不禁利用一些業餘時間,好好學習一下jdk1.8帶給我們強大的用法。總之就是,簡化了之前代碼的書寫,使用函數式編程,不用反

原创 MYSQL中的樂觀鎖實現(MVCC)簡析

什麼是MVCC MVCC即Multi-Version Concurrency Control,中文翻譯過來叫多版本併發控制。 MVCC是解決了什麼問題 衆所周知,在MYSQL中,MyISAM使用的是表鎖,InnoDB使用的是行鎖。而In

原创 Java正則表達式--Matcher.group函數的用法

原來,group是針對()來說的,group(0)就是指的整個串,group(1) 指的是第一個括號裏的東西,group(2)指的第二個括號裏的東西。 最近學習正則表達式,發現Java中的一些術語與其他地方描述的有所差異。比如Java正則