原创 解決 SpringBoot + ktorm 多數據源時默認數據庫的指定

最近剛接觸到kotlin語言,並丟棄之前的mybatis使用全面支持kotlin的ktorm框架。框架使用 SpringBoot + ktorm ,但是多數據源時會導致無法指定默認數據庫。根據官網的說法默認數據庫就是最後一次創建的Data

原创 深入JVM-內存模型

本文討論以 JDK8 版本展開 Java虛擬機棧 棧幀 棧幀:棧幀(Stack Frame)是用於支持虛擬機進行方法調用和方法執行的數據結構。棧幀存儲了方法的局部變量表、操作數棧、動態連接、方法返回地址和附件信息。每一個方法從調用

原创 深入瞭解布隆過濾器

概念 布隆過濾器(英語:Bloom Filter)是1970年由一個叫布隆的小夥子提出的。它實際上是一個很長的二進制向量和一系列隨機映射函數。布隆過濾器可以用於檢索一個元素是否在一個集合中。它的優點是空間效率和查詢時間都遠遠超過一般的算法

原创 深入併發-線程池

什麼是線程池 在 Java 中,如果每個請求到達就創建一個新線程,創建和銷燬線程花費的時間和消耗的系統資源都相當大,甚至可能要比在處理實際的用戶請求的時間和資源要多的多。 如果在一個 Jvm 裏創建太多的線程,可能會使系統由於過度

原创 SpringBoot實現Filter的兩種方式

前言 Filter 是 SpringBoot 裏面使用來做驗證授權和跨域配置的第一選擇,但是我們應該如何實現一個 Filter 對所有URL進行過濾? 使用註解方式實現: import lombok.extern.slf4j.Slf4j

原创 SqlSessionTemplate爲什麼線程安全

最近在看Mybatis源碼,對於理解SqlSessionTemplate是如何保證線程安全的網上的文章不多。希望通過本文能夠幫助大家清楚理解,類關係圖如下: DefaultSqlSession與SqlSessionManager解析 在

原创 linux基礎指令基礎

常用命令 1 查看指令幫助:help 文件相關 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 查看當前目錄內容:ls、ll 清除終端內容:clear

原创 MySQL修改字段值爲指定集合的隨機一個

UPDATE test  SET nums = ( CASE     floor( 1 + rand( ) * 4 )      WHEN 1 THEN     '1'      WHEN 2 THEN     '2'      WHEN

原创 JVM性能調優監測工具

查看正在運行的程序 jps主要用來輸出JVM中運行的進程狀態信息。語法格式如下:   jps [options] [hostid] options: -q 不輸出類名、Jar名和傳入main方法的參數 -m 輸出傳入main方法的參

原创 Spring 之 MVC 詳解

概念 什麼是MVC? ​ MVC是模型(Model)、視圖(View)、控制器(Controller)的簡寫,是一種軟件設計規範。就是將業務邏輯、數據、顯示分離的方法來組織代碼。MVC主要作用是降低了視圖與業務邏輯間的雙向偶合。M

原创 MySQL多表關聯查詢優化

背景 最近在對運營報表導出進行優化,總結了一些多表關聯查詢優化的點記錄一下。 避免臨時表 通過 Explain 分析 SQL 語句,儘量不要使用到臨時表。GROUP BY (Explain具體詳解,可以看這篇博客) 最容易造成使用

原创 深入併發-內存模型

從硬件層面瞭解可見性 一臺計算機中最核心的組件是 CPU、內存、以及 I/O 設備。在整個計算機的發展歷程中,除了 CPU、內存以及 I/O 設備不斷迭代升級來提升計算機處理性能之外,還有一個非常核心的矛盾點,就是這三者在處理速度

原创 Spring 之 事件機制詳解

概念 Spring事件機制分爲事件發佈器(EventPublisher)、事件監聽器(EventListener)和事件多播器(ApplicationEventMulticaster)。Spring事件機制對應常用設計模式之觀察者

原创 Spring 之 高頻面試題

1、什麼是Spring框架,Spring框架主要包含哪些模塊 Spring是一個輕量級的Java 開發框架。它是爲了解決企業應用開發的複雜性而創建的。框架的主要優勢之一就是其分層架構,分層架構允許使用者選擇使用哪一個組件,同時爲

原创 深入併發-工具類

CountDownLatch 如果不熟悉 AQS 的同學建議先去看樓主的之前的博文《深入併發-AQS》,不然理解本章將很喫力。 概念 CountDownLatch 是一個同步工具類,它允許一個或多個線程一直等待,直到其他線程的操作