原创 Docker創建Sonar容器,數據庫使用Mysql5.7

SonarQube 簡介 Sonar是一個用於代碼質量管理的開源平臺,用於管理源代碼的質量,可以從七個維度檢測代碼質量  可以通過插件形式,支持包括java,C#,C/C++,PL/SQL,Cobol,JavaScrip,Groovy等

原创 mysql 連接報錯2059

登陸 執行命令 use mysql; select user,plugin from user where user='root'; 可以看到當前用戶的加密方式爲caching_sha2_password   執行命令 alter

原创 SpringAOP源碼解析(AnnotationAwareAspectJAutoProxyCreator 註冊)

下面的源碼分析基於Spring版本 5.0.6.RELEASE 目錄 分析創建和註冊AnnotationAwareAspectJAutoProxyCreator的流程 1、瞧瞧這個註解都有啥 2、接下來重點研究 AnnotationA

原创 ConcurrentHashMap_jdk1.8

與1.7相比的重大變化 1、取消了segment數組,直接用table保存數據,鎖的粒度更小,減少併發衝突的概率。 2、存儲數據時採用了鏈表+紅黑樹的形式,純鏈表的形式時間複雜度爲O(n),紅黑樹則爲O(logn),性能提升很大。什麼時

原创 ConcurrentHashMap_jdk1.7

public ConcurrentHashMap() { // 默認Table容量爲16,默認擴容因子爲0.75,默認併發級別爲16(即分段鎖個數) this(DEFAULT_INITIAL_CAPACITY,

原创 AbstractQueuedSynchronizer部分源碼解析

    /**      * 加鎖      */     public final void acquire(int arg) {         // 首先嚐試獲取,如果獲取成功直接退出;如果獲取失敗,即競爭鎖失敗,則創建Node,

原创 Centos7使用Docker創建Oracle11g

實例名(SID ) orcl 管理員帳號 system/admin 字符集 utf-8 端口 1521 1、首先拉取鏡像文件(文件較大,耐心等待)          命令:docker pull filemon/oracle_11g

原创 項目SQL查詢優化(一)

今天編寫mapper,無意間看見了一個包含多個子查詢的語句,於是引發了思考,覺得這個語句可以被優化。 SELECT t.id,t. CODE,t.`name`,t.`value`,t.company_id,c.`name` compan

原创 Oracle啓動過程中遇到的幾個問題(CentOS7)

Linux:CentOS7 Oracle:11g 1、當出現以下信息時 'abrt-cli status' timed out 執行命令 abrt-auto-reporting enabled 可解決 2、監聽啓動失敗,提示以下異

原创 HashMap.put(K key, V value)源碼分析

final V putVal(int hash, K key, V value, boolean onlyIfAbsent, boolean evict) { Node<K,V>[]

原创 字transient和volatile小結

transient和volatile兩個關鍵字一個用於對象序列化,一個用於線程同步,都是Java中比較高階的話題,簡單總結一下。 transient transient是類型修飾符,只能用來修飾字段。在對象序列化的過程中,標記爲tr

原创 如何排除閉環中重複的環路

項目需求:將一個數據地圖中具有閉環的路徑全部找出來,並顯示在前臺頁面。 閉環數據準備: A→B→C→D→A B→C→D→A→B C→D→A→B→C D→A→B→C→D W→H→Y→Z 非重複迴路數據: A→B→C→D→A W→H→Y→Z

原创 String.equals()源碼分析

String.equals()方法簡單說就是判斷地址值是否相等,如果相等,則返回true,如果不相等,則繼續判斷內容是否相同,如果存在任意一個字符不相同(區分大小寫),則返回false。如果長度相同而且所