原创 使用javaparser分析重構java源碼

爲什麼需要一個這樣的工具? 有時候我想要一個輔助我對現有java工程代碼進行全面改造的工具,而這種改造工作比較精細特別,需要我做一些定製操作,而且現有的IDE內置工具沒有提供這種特定化的改造功能。這時我就想,爲了做這種改造,可以使用什麼思

原创 思考力

小嘰導讀:很多工程師在工作一段時間後會遇到迷茫期,雖有技術傍身,也難免會產生焦慮,反覆思考怎樣才能快速成長。關於如何提高自己的思考力,運用思考的力量推動能力提升,以此實現技術成長,阿里巴巴盒馬產品技術部的巖動在阿里工作8年後,總結了一套思

原创 銀行家算法學習筆記

理解: 銀行家算法是在不考慮需求資源超時的情況下,找出最大化滿足所有需求者的資源配置優先級隊列或證明死鎖存在 死鎖避免——銀行家算法的應用背景 要想說銀行家,首先得說死鎖問題,因爲銀行家算法就是爲了死鎖避免提出的。那麼,什麼是死鎖?簡單的

原创 在阿里做了五年技術主管,我有話想說

  來源: 雲狄 阿里技術 今天   阿里妹導讀:在歷史文章《如何成爲優秀的技術主管?》中,阿里巴巴高級技術專家雲狄從開發規範、開發流程、技術規劃與管理三個角度,分享對技術 TL 的理解與思考。   今天的文章,他將繼續深入探討這一話題,

原创 spring cloud 註冊中心之Eureka Server和Client的搭建與使用

一、server 端搭建 1.配置maven 依賴 <dependency> <groupId>org.springframework.cloud</groupId> <artifact

原创 多線程開發帶來的併發問題的根源與解決之道

多線程開發帶來的併發問題大致有以下3類: 1.可見性問題 2.原子性問題 3.有序性問題 下面分別對這3類問題的產生根源和解決之道一一講解: 1.可見性問題 簡而言之,就是一個線程對另一個線程的操作結果能夠立刻可見。 問題根源: 在多核時

原创 記一次git不當操作造成的災難

公司項目將幾乎所有的工程都存放在同一個倉庫目錄下,而不是每個不同項目單獨弄一個倉庫。 1.當克隆項目代碼到本地時,儘管你實際上只對其中一個工程做修改,當時你不得不爲其他項目的克隆和檢出忍受耗時 2.導入項目到IDEA中,默認會導出一堆你並

原创 史上更全的 MySQL 高性能優化實戰總結

1 前言 2 優化的哲學 3 優化思路 3.1 優化什麼 3.2 優化的範圍有哪些 3.3 優化維度 4 優化工具有啥? 4.1 數據庫層面 4.2 數據庫層面問題解決思路 4.3 系統層面 4.4

原创 Oracle SQL 內置函數大全(轉)

SQL中的單記錄函數 1.ASCII 返回與指定的字符對應的十進制數; SQL> select ascii('A') A,ascii('a') a,ascii('0') zero,ascii(' ') space from dual; A

原创 Logback - SiftingAppender

1. 作用 Logback將寫日誌事件的任務委託給appender組件完成,SiftingAppender顧名思義就是篩選日誌事件,具體點就是: 對於Logback委託給它的日誌事件,SiftingAppender會對日誌事件做一些區分

原创 java開發運維最佳實踐經驗

1.使用通用第三方工具jar減少造輪子工作,提升代碼優雅度 使用apache commons系列工具包 <dependency> <groupId>commons-lang</groupId> <artifactId>c

原创 使用jacoco maven插件做單元測試覆蓋率統計

1.在項目pom.xml中build->plugins下添加 <plugin>                 <groupId>org.jacoco</groupId>                 <artifactId>jacoc

原创 《Nginx官方文檔》–入門指南

原文鏈接 本指南會對nginx進行基本的介紹並描述一些它可以完成的簡單任務。如果你還沒有安裝nginx,請參閱nginx的安裝。本指南不僅描述了怎麼啓動和停止nginx,怎麼重新加載nginx的配置,還解釋了nginx配置文件的結構以及如

原创 extjs6 Ext.Class的配置詳解

1. alias String/String[]    類別名列表,命名方式爲<namespace>.<name> namespace 描述了別名的類型,一律爲小寫 name:允許通過別名實現延遲實例化,一般不應再包含.分割的空間 以下是

原创 關於“約定大於配置“的理解

    人類社會在不斷文明的過程就是不斷建立契約的過程,基於契約建立了我們想要的穩定的社會關係。契約亦或是約定,消除了不同事物在合作過程中的不協調的地方,使得對於共同理想能夠更容易的建立一致建設意見。    在軟件編程中,需要面對技術上的