原创 1.跳躍表SkipList

redis 中zset 數據結構使用了跳躍表實現 zset 要支持隨機刪除和插入。插入特定順序,繼續保證鏈表有序, 二分查找的對象必須是數組 跳躍表一: 理解思路 鏈表加上多層的索引: 跳躍表二: 假如我們要用某種數據結構來維護

原创 5年整理 爬蟲資料

爬蟲學習過程中收集的資料 理性使用技術,遠離非法業務。 文章中鏈接是瀏覽器直接導出,5年的經驗積累 適合爬蟲入門者能力提升,包含多種數據採集思路 *[ 爬蟲收藏夾 無頭瀏覽器異聞錄 | 嵐光 Burp Suite Python

原创 工欲善其事必先利其器:idea 快捷鍵

原文:https://www.cnblogs.com/aashui/p/7657803.html 一鍵格式化代碼: Ctrl+Alt+L 全局搜索替換:ctrl+shift+r 強大的搜索功能,shift+shift (無論您想要

原创 JDK11 HashMap詳解

一、HashMap 新增元素 HashMap 擴容

原创 設計模式7原則概述

Java 設計模式23種 設計模式原則 1.開閉原則: 對擴展開放,對修改關閉 實踐:分模塊、接口、類 方法 方法重載 類繼承 接口實現 項目設計中基本都用到 開閉原則的作用 開閉原則是面向對象程序設計的終極目標,它使軟件實體擁

原创 JDK12 垃圾收集

Garbage Collection in JDK 12 and onward Garbage collection is one of the key concepts of Java programming and up to

原创 maven管理第三方jar

日常開發中大家普遍使用了maven 管理引用的jar ,或者使用公共倉庫,或者使用公司自己搭建的私有倉庫 如果遇到項目需要引用第三方jar ,可以採用以下兩種方式處理: 1.本地引用 <dependency>

原创 Git 原理與實踐

工作過程中發現很多小夥伴會git理解不深,操作過程中往往使用一些 刪除分支,文件備份的方法保證自己的代碼。本文將結合工程實踐講解git的原理 本文長期更新,歡迎研討交流。 一:git 強制回退 一不小心提交了多於的代碼到mast

原创 精通Redis 11 之 Redis cluster槽的遷移原理分析

一、槽的遷移 redis 提供redis-trlib 可以讓運維手工調整槽位分配情況, set key 的時候可以通過在key字符串裏嵌入tag 標記,強制把key 所掛的槽位等於tag 所在的槽位 如圖 所示,Redis 客戶

原创 jvisualvm分析hprof文件

jvisualvm是jdk1.8自帶的dump 文件分析工具,hprof文件是 jvm 有OutOfMemory異常出現的時候,JVM就會將當前的虛擬機的堆等信息放入hprof文件中,名字是大概java_pid加上進程號,比如:j

原创 idea git分支圖 使用說明(1)

idea git圖解分析 compact references view 簡潔引用視圖 簡潔引用: align references to left 將引用向左對齊 引用左右對齊配置: Show tag names 顯示

原创 實踐領域驅動設計(3)- 領域

從廣義上理解:領域domain 即是一個組織所做的事情以及其中所包含的一切。商業機構通常會確定一個市場,然後在這市場中銷售產品和服務。每個組織都有啊自己的業務和做事方式。這個業務範圍以及在其中所進行的活動便是領域。 領域、子域 領

原创 idea git分支圖 使用說明(2)

Trun IntelliSort On 打開intelli 排序 默認排序 默認排序按照時間線,不同分支提交節點交替 分支數少,對應 collapse linear branch and Expand linear bra

原创 JAVA 獲取系統的配置信息

java代碼獲取系統信息(Java 路徑) 1.java 中常用的路徑信息 1.1臨時目錄 操作系統不同 這個系統屬性所表示的目錄也不同 On Windows: java.io.tmpdir:[C:\DOCUME~1\joshua

原创 java集合數據複製到另外一個集合

文章目錄Lsit中數據複製問題1.1淺拷貝1.2深拷貝1.3 最終結論 Lsit中數據複製問題 這是由一道開放式面試題引發的文章,題目:加入內存足夠大,一個集合中有100萬條數據,怎麼高效的把集合中的數據複製到另外一個集合 1.1