原创 爲什麼 Java 外部類可以訪問靜態內部類的 private 屬性?

外部類可以訪問靜態內部類的 private 屬性。 原因 靜態內部類在經過 Java 編譯器編譯後會生成 private 屬性對應的 access$Xxx(),供外部類使用。 一個類被使用到的時候纔會加載到內存。靜態內部類之所以可

原创 Kafka 高性能的原因

主要因素 主要是以下三點: Broker NIO 異步消息處理,實現了 IO 線程與業務線程分離 磁盤順序寫 零拷貝

原创 2019 年總結

點擊上方藍色字體,選擇“置頂公衆號”一起自學,一起進步在高中總是好奇那些好學生爲什麼那麼喜歡總結,到了大學終於明白了。學習不是死記硬背,是邏輯的推理,就像一顆樹上的枝葉一樣,你越推理枝葉越多。各種知識是靜態的,只有通過不斷的深度思考,鍛

原创 mysql 中文亂碼問題解決(複製粘貼就可以解決)

問題 出現中文亂碼一般是有三處的編碼不統一: mysql 客戶端character_set_client 與程序的鏈接處character_set_connection mysql 的服務端character_set_serv

原创 Redis Key 統一管理技巧

背景 我們的項目中可能存在多種業務場景需要接入 redis 緩存,在插入緩存時需要設置 key,如果這個 key 散落在項目的各個業務代碼中的話,會給後期維護帶來很大的不便。所以我建議把系統中用到緩存 key 放到一個類中統一管理

原创 對 spring 中兩種不同動態代理技術的思考

待完善:cglib 代理類是什麼樣子,JDK 動態代理是什麼樣子 事務類型 通常我們只會用到 @Transactional(propagation = Propagation.REQUIRED) 。 在特殊需求的時候需要在一個

原创 數據庫熱點數據更新的思考

點擊上方藍色字體,選擇“置頂公衆號”一起自學,一起進步熱點數據更新對於有限的數據庫資源,如果有大量請求去消費的話,肯定會產生大量的鎖競爭(數據庫對一條數據的更新會導致在索引上給這條記錄加行鎖,如果沒有索引,會導致鎖表),消耗服務器資源,

原创 職場肌肉記憶總結

點擊上方藍色字體,選擇“置頂公衆號”一起自學,一起進步時間過的挺快,不知不覺我已經實習了大半年了(從大三下學期到大四上)。在實習的過程中,我明白了很多道理,也有些許感悟。接下來就分享職場上一些好習慣,以及編碼好習慣。職場好習慣 養成寫單

原创 Java 程序員應該注意提升的一些重要技能點

1. 寫作 提升自己的文字表達能力,總結提煉能力。 2. 計算機基礎 程序員的內功,爲你以後學習其他東西都有幫助。 3. 框架源碼 多去學學優秀的代碼是怎麼寫的?我們是不是可以去借鑑一下?我們平時寫代碼需要刻意去注意一下代碼規範?

原创 Java 業務開發中常用的 Hive 技巧

時間戳問題 假設我們 mysql 數據庫中有張表叫 student ,它有一個字段是 created_at(類型是 long 或 int)。mysql 數據庫的 student 表在 hive 中對應的表爲 dw_student

原创 Java 必備原理知識

注:這篇博客主要記錄一些我覺得作爲一個 Java 開發所應該知道的基礎知識。有的內容我覺得有些博客已經寫的很清晰了,我就會直接複製過來並標明原文鏈接。 final、static、static final修飾的字段賦值的區別 sta

原创 高版本數據庫文件導入低版本 mysql 的解決方法(附帶工具)

概述 在數據轉移的過程中,偶爾會碰到高版本數據庫需要轉移到低版本數據庫的情況。一般情況下,低版本無法識別高版本的數據庫文件,容易報錯。比如:我把 mysql 5.5 的數據庫信息想轉移到 mysql 5.0 的版本上,導入 sql

原创 Java 中報 ClassNotFoundException 這個異常怎麼解決

在 web 項目中報這個錯,一般有兩種情況: classpath 設置錯誤。 maven 依賴導入的 jar 發生了衝突,可以利用 IDE 或者插件找出衝突來,從而解決。

原创 編程設計的思考

日常思考 一些設計的做法可能跟它的初衷有關。需要去考慮設計的初衷是什麼。 設計良好的模塊會隱藏所有的實現細節,把它的 API 與它的實現清晰地隔離開來。模塊之間只通過它們的 API 進行通信,一個模塊不需要知道其他模塊的內部工作情

原创 JavaScript 使用技巧

1. JavaScript 介紹 JavaScript 是一種腳本語言,是一種解釋型語言(就是說,代碼執行不進行預編譯)。JavaScript 被設計用來向 HTML 頁面添加交互行爲。 組成: ECMAScript:它是整個