原创 SpringCloud+OAuth2實現統一權限驗證,並持久化到Mysql中

社區羣聊 添加小編微信進入java學習交流羣,小編微信:372787553,備註進羣 本文是基於數據庫實現的,如果您想基於Redis實現,請移步到SpringCloud+OAuth2 統一權限驗證 OAuth2簡介 OAuth2

原创 ReentrantLock詳解與實戰

ReentrantLock 在處理線程安全問題上,在JDK5以後引入了 Lock ,synchronized和Lock都可以保證線程安全問題!而Lock比synchronized使用更加靈活,也更適合複雜的併發場景。本文主要講解L

原创 棄坑Fastjson ,進軍Jackson

Java學習社區 添加小編微信:372787553,備註進羣! 導語 Fastjson 是阿里開源的Json類庫,功能很強大,使用也很簡單,不得不說溫少還是很厲害的,但是fastjson卻經常會暴露出高危的漏洞,每次都是緊急發版,

原创 聊聊MyBatis二級緩存機制

導語 看着這篇文章的你一定是程序員了吧,哈哈,這麼快來添加小編的微信,帶你進入Java技術交流羣;備註csdn,羣裏的大佬,等你來聊; 小編微信:372787553 Mybatis 自定義二級緩存 Mybatis 在日常的Jav

原创 狀態模式來龍去脈盡在這裏

社區羣聊 添加小編微信進入java學習交流羣,小編微信:372787553,備註進羣 文末附帶源碼地址 1.模式動機 在很多情況下,一個對象的行爲取決於一個或多個動態變化的屬性,這樣的屬性叫做狀態,這樣的對象叫做有狀態的(stat

原创 SpringCloud+OAuth2+JDBC實現統一權限管理

社區羣聊 添加小編微信進入java學習交流羣,小編微信:372787553,備註進羣 本文是基於數據庫實現的,如果您想基於Redis實現,請移步到SpringCloud+OAuth2 統一權限驗證 OAuth2簡介 OAuth2

原创 高併發中StampedLock理解與應用

ReadWriteLock大家都用過或者聽說過,可以解決多線程同時讀,但只有一個線程能寫的問題。如果我們深入分析ReadWriteLock,會發現它有個潛在的問題:如果有線程正在讀,寫線程需要等待讀線程釋放鎖後才能獲取寫鎖,即讀的

原创 CompletableFuture使用詳解

在多線程中,使用線程池時使用Future獲得異步執行結果時,要麼調用阻塞方法get(),要麼輪詢看isDone()是否爲true,這兩種方法都不是很好,因爲主線程也會被迫等待。 從Java 8開始引入了CompletableFut

原创 Spring @Conditional xxx 相關注解介紹與使用

上文我們講解了@Import的方式進行導入,本文我們將學習@Conditional xxx相關注解 主要有: @Conditional // 根據條件判斷滿足時,則實例化當前Bean @ConditionalOnB

原创 Spring@Import詳解與使用

在應用中,我們會把大量的類注入到IOC中,有時沒有把某個類注入到IOC容器中,但在運用的時候需要獲取該類對應的bean,此時就需要用到@Import註解。 一. @Import 使用 1.1 @Import 介紹 直接導入類 通

原创 SpringBoot全局異常捕獲參以及參數異常

現在比較常用的方式是給前端返回JSON,但是有些時候程序出現一些異常,導致前端頁面報錯不是很友好,所以就需要對項目進行全局的異常捕獲,返回給前端固定的格式,進行友好的處理! 話不多說,開始寫代碼 一.全局異常捕獲 1.1 全局捕獲

原创 JVM 垃圾收集器

JVM學習目錄 1.JVM 概念簡介 2.JVM 運行時內存 3.JVM算法簡介 4.JVM 垃圾收集器 5.JVM 調優實戰 一、Serial收集器 Serial收集器是最基本、發展歷史最悠久的收集器,曾經(在JDK 1.3.1

原创 深入解析Java多線程下 ArrayBlockingQueue

相關文章: JAVA多線程創建、使用看這一篇就夠了 Java多線程進階實戰 文章目錄一.ArrayBlockingQueue 介紹二、創建ArrayBlockingQueue2.1 默認非公平阻塞隊列2.2 公平阻塞隊列2.3 給

原创 DockerCompose命令介紹與使用

Docker學習系列文章 1.Docker安裝與卸載詳細介紹 2.Docker常用命令介紹 3.Dockerfile 命令介紹 4.Docker Registry搭建與使用 5.Docker 數據管理 6.Docker三劍客Com

原创 Zipkin 持久化存入Elasticsearch

一.Zipkin服務端 1.1 依賴 <properties> <java.version>1.8</java.version> <zipkin.version>2.9.4</zipkin.ver