原创 SpringBoot的Jar的運行方式

SpringBoot提供了一個插件spring-boot-maven-plugin用於把程序打包成一個可執行的jar包。在pom文件里加入這個插件即可: 1 2 3 4 5 6 7 8 org.springframework

原创 Hash衝突解決策略

哈希是一種通過對數據進行壓縮, 從而提高效率的一種解決方法,但由於哈希函數有限,數據增大等緣故,哈希衝突成爲數據有效壓縮的一個難題。本文主要介紹哈希衝突、解決方案,以及各種哈希衝突的解決策略上的優缺點。 一、哈希表概述 哈希表的哈

原创 操作系統系列之基礎篇

一what 操作系統是管理計算機硬件與軟件資源的計算機程序。操作系統需要處理管理與配置內存 決定系統資源的優先次序 控制輸入與輸出設備 操作網絡與管理文件系統等基本事務。它爲計算機硬件和軟件中間提供了一箇中間層。 解釋一下操作系

原创 Mybatis中集合總結

用來循環容器的標籤forEach,查看例子 foreach元素的屬性主要有item,index,collection,open,separator,close。 item:集合中元素迭代時的別名, index:集合中元素迭代時的索

原创 設計模式系列之策略模式

一 策略模式的本質 策略模式的本質:策略模式 是一個接口多個實現類,而每種實現類會處理某一種情況 二 what 策略模式是一種行爲模式,是將每一種算法封裝到具有共同接口的獨立類中,從而可以相互替換 三 Why 優點: 1.擴展性良

原创 設計模式系列之策略模式

一 策略模式的本質 策略模式的本質是一個接口有多個實現類,而每種實現類會處理某一種情況。 public interface PrizeSender { /** 用於判斷當前實例是否支持當前獎勵的發放 */ boolean sup

原创 多線程基礎之AQS

一 AQS:是抽象的隊列式的同步器 內部定義了很多鎖相關的方法,我們熟知的ReentrantLock、ReentrantReadWriteLock、CountDownLatch、Semaphore等都是基於AQS來實現的。 我們先

原创 NoSQL綜述

NoSQL數據庫在整個數據庫領域的江湖地位已經不言而喻。在大數據時代,雖然RDBMS很優秀,但是面對快速增長的數據規模和日漸複雜的數據模型,RDBMS漸漸力不從心,無法應對很多數據庫處理任務,這時NoSQL憑藉易擴展、大數據量和高

原创 Tomcat源碼分析:Socket網絡通信和線程模型體系結構設計

一、概述 Tomcat在設計當中,自頂向下主要包括:Catalina容器,Coyte連接器和底層Socket通信端點EndPoint三部分組成。底層Socket通信端點EndPoint主要完成socket通信的相關細節和整個Tom

原创 Netty(二)

異步和同步 同步(Sync):所謂同步,就是線程發出一個功能調用時,在沒有得到結果之前,該調用就不返回或繼續執行後續操作,而是等待可以調用。當可以調用之後,線程自行進行調用。 異步(Async):異步與同步相對,當一個異步過程調用

原创 算法系列之時間複雜度和空間複雜度

時間複雜度和空間複雜度可以幫助我們根據具體的平臺選擇合適的算法,要學會以空間換時間或以時間換空間的設計思想,如在單片機等一般是內存空間比較緊張,在追求最優算法時應該可以適當以時間來換空間進行設計,當然在大內存設備上可以選擇以空間換

原创 吃透JAVA集合框架(超級詳細)(綜述)

一 集合框架圖 簡化圖一: 簡化圖二: 說明:對於以上的框架圖有如下幾點說明 1、所有集合類都位於java.util包下。Java的集合類主要由兩個接口派生而出:Collection和Map,Collection和Map是J

原创 UML科普(二)

一 是什麼? UML是Unified Model Language 的縮寫,中文是統一建模語言,是由整套圖表組成的標準化建模語言 二 爲什麼 通過使用UML使得在軟件開發之前, 對整個軟件設計有更好的可讀性,可理解性,從而降低開發

原创 jdk(1-14)特性總結

JDK 14 無版本代號, 2020-03-17 發佈。 特性:(還未來得及研究每個新特性,無法確認是功能的屬性) 305: instanceof的模式匹配 (預覽) 343: 打包工具 (Incubator) 345: G1的N

原创 JAVA併發系列之ThreadLocal

ThreadLocal是什麼 首先說明,ThreadLocal與線程同步無關。ThreadLocal雖然提供了一種解決多線程環境下成員變量的問題,但是它並不是解決多線程共享變量的問題。 ThreadLocal類提供了一種線程局部變