原创 2020年Java知識彙總

1、熟悉Java語法,多線程、集合等基礎框架 java集合框架總結(List、Set、Map) JAVA多線程(線程池、ThreadLocal、CountDownLatch) Java多線程入門教程 2、深入理解JVM,包括內存模型、

原创 從CountDownLatch源碼和ReenTrantLock源碼看AQS(AbstractQueuedSynchronizer)

目錄 AQS概念 CountDownLatch源碼 ReenTrantLock源碼 AQS概念 抽象隊列同步器,是除了java自帶的synchronized關鍵字之外的鎖機制。AQS就是基於虛擬的雙向隊列(雙向鏈表),用volatile修

原创 java集合框架總結(List、Set、Map)

從上面的集合框架圖可以看到,Java集合框架主要包括兩種類型的容器,一種是集合(Collection),存儲一個元素集合,另一種是圖(Map),存儲鍵/值對映射。Collection接口又有3種子類型,List、Set和Queu

原创 基於二叉樹的堆排序、優先隊列、二叉查找樹、平衡查找樹、B樹詳解

一、二叉樹的性質 二叉樹第i層上的結點數目最多爲2^(i-1) 深度爲k的二叉樹至多有2^k-1個結點 在任意-棵二叉樹中,若終端結點的個數爲n0,度爲2的 結點數爲n2,則no=n2+1

原创 Java多線程入門教程

0、概念 - Java線程具有五種基本狀態 新建狀態(New):當線程對象對創建後,即進入了新建狀態,如:Thread t = new Thread(); 就緒狀態(Runnable):當調用線程對象的start()方法(如:

原创 mybatis多數據源動態切換

 首先在配置文件中配置多個數據源 <!--數據庫配置一--> <bean id="dataSource1" class="org.apache.commons.dbcp.BasicDataSource">

原创 centos7.2安裝phpmyadmin

首先服務器要有web 環境 yum install phpmyadmin 修改/etc/http.conf/conf.d/phpMyadmin.conf 將 #Require ip 127.0.0.1 #Require i

原创 MySQL索引原理淺析

目錄 1、數據結構(B+還是B-?) 2、非聚集索引 3、聚集索引 4、數據庫引擎MyISAM與InnoDB的區別 1、數據結構(B+還是B-?) 目前大多數數據庫系統都使用B-樹和B+樹作爲索引結構。 一般來說,索引本身也很大,不可能全

原创 冒泡排序-選擇排序-快速排序(PHP實現)

冒泡排序 $arr=array(5,3,6,9,10); $str=''; //冒泡排序 向右冒,小數冒泡 for($i=0;$i<count($arr)-1;$i++){ for($j=0;$j<count($arr)

原创 spring mvc 異常統一處理

        最近在項目中發現Controller層的很多接口都是先打日誌再拋出異常,於是想到使用mvc提供的異常統一處理方法來減少打印日誌的代碼。查詢發現已有使用@ControllerAdvice + @ExceptionHandle

原创 六大設計原則

單一職責:一個類應負責一個職責,一個方法只完成一件事。 里氏替換原則:任何父類出現的地方都可以用子類替換。 依賴倒置:通過接口產生依賴,而不是通過實現類。 接口隔離:不要爲了容納多個模塊的訪問而將所有方法放在同一個接口中,應儘量細化接口。

原创 分佈式鎖 - redis鎖、zookeeper鎖

應用場景: 分佈式鎖是爲了保證同一時刻只有一臺機器的一個線程執行某段代碼。分佈式鎖的目的如下 解決業務層冪等性 解決 MQ 消費端多次接受同一消息 確保串行|隔離級別 多臺機器同時執行定時任務 最近在工作中遇到了一些問題,

原创 log4j2.xml配置

聊一聊log4j2配置文件log4j2.xml 點贊 收藏 分享 文章舉報 -大能豆- 發佈了68 篇原創文章 · 獲贊 47 · 訪問量 16萬+ 私信

原创 spring淺析

1、spring啓動流程 web容器爲web應用提供一個全局的上下文環境ServletContext,爲IOC容器提供宿主環境。 web.xml中有contextLoaderListener,在web容器啓動時觸發容器初始化事件(Appl

原创 @Autowired可以注入List和Map

spring是支持這種基於接口實現類的直接注入的 @Autowired private List<MyInterface> myList; 這樣就直接將MyInterface的子類bean直接添加到了myList中,並且還可以用Orde