原创 PowerDesigner16.6最新安裝包

PowerDesigner相信做開發的同學都不陌生,我們數據庫設計必備的神器。這裏就不過多介紹PowerDesigner的使用。直接講解如何下載安裝最新版PowerDesigner16.6。 首先直接上官網:http://powerdes

原创 ideaIU-2019.2.4版安裝

IntelliJ IDEA ,越來越多的小夥伴從 eclipse 改用IDEA開發,其實我個人還同時再用eclipse的,有時候總感覺 IntelliJ IDEA的快捷鍵老是忘記。 官網下載如圖所示(大家可以去官網自行下載,有安裝版的也有

原创 Axure9.0原型設計安裝包

作爲開發程序員,產品原型設計或多或少都有接觸過,之前一直都是用Axure8的, 突然有一天產品發了一份需求原型rp文件,居然打不開,最後才知道,Axure9打開過的文件,用Axure8是無法打開的。(頓時頭大,居然有這種神約束) 沒辦法,

原创 人生第一次私活就這樣不期而遇

程序員接私活,你有經歷過嗎? 程序員接私活,往往在程序員的圈子是很常見的事情。可是參加工作十年了,我真真意義上就這麼一次。雖然之前有幫忙做過一些零散的事情,但是都不夠體系化。這一次纔是真正意義上第一次接私活。話不多說,直接入正題。 202

原创 MongoDB mapReduce填補自帶group的限制問題

用過MongoDB的小夥伴或多或少都會遇到MongoDB自帶group的限制問題,即group不支持大於2萬的結果集! 我曾在任職公司做過某網站小區均價數據抓取,採用的是Groovy技術。數據抓取下來後存放在MongoDB中。數據抓取完成

原创 VBA實現Excel模塊篩選高級應用場景!

做過項目管理或者產品管理的小夥伴或多或少都會對Excel比較依賴,那麼你瞭解過什麼是VBA嗎? 複雜場景下對Excel的高級應用可能需要藉助VBA代碼才能實現。有些小夥伴可能瞭解VBA,有些可能還沒接觸過。今天我給大家講一個複雜場景下通過

原创 併發編程之LockSupport源碼分析及簡單使用

曾經面試被問到JAVA中實現線程掛起和喚醒有哪些方式,除了採用Object類中wait notify/notifyAll實現還有其他方式嗎?當時真心沒答上來,後來做了功課才知道還有LockSupport類中park/unpark可以實現。

原创 爲什麼重寫equals方法同時需要重寫hashCode方法?

爲什麼重寫equals方法同時需要重寫hashCode方法? 衆所周知equals()和hashCode()是Object類中定義的方法。Object類定義的方法如下: Object的equals()定義如下: 註釋部分大概意思是:

原创 Thread線程有哪幾種狀態,這篇文章帶你深入瞭解!

Thread線程有哪幾種狀態,這也是面試中很多小夥伴都會被問到的知識點。Thread線程狀態是應該掌握的基礎知識。但是很多小夥伴如果沒有總結過的話,面試過程可能會懵圈,這裏我稍作整理,希望小夥伴們可以查漏補缺。 Thread源碼中有定義S

原创 ConcurrentHashMap弱一致性迭代器

什麼是弱一致性迭代器??? 當創建迭代器後,其他線程刪除了該元素時候並不會拋出java.util.ConcurrentModificationException異常,能夠保持創建迭代器後的元素被正確的Iterator.next()出來。例

原创 CopyOnWriteArrayList源碼分析、使用場景說明

java.util.concurrent包下提供了很多併發編程使用的類,CopyOnWriteArrayList就是其中之一。 CopyOnWriteArrayList是線程安全容器(相對於ArrayList),底層通過複製數組的方式來實

原创 JAVA併發編程Fork/Join(分而治之思想)之(ForkJoinPool/ForkJoinTask)

Java提供Fork/Join框架用於並行執行任務,它的思想就是講一個大任務分割成若干小任務,最終彙總每個小任務的結果從而得到這個大任務的結果。 這裏我們也藉助這種思想來處理一個超大任務的運算,採用ForkJoinPool/ForkJoi

原创 JAVA併發編程Fork/Join(分而治之思想)之(Future/Callable)

Java提供Fork/Join框架用於並行執行任務,它的思想就是講一個大任務分割成若干小任務,最終彙總每個小任務的結果從而得到這個大任務的結果。 這裏我們也藉助這種思想來處理一個超大任務的運算,但是不用ForkJoinPool/ForkJ

原创 JAVA多線程高併發之ReentrantLock講解公平鎖

JAVA中多線程高併發場景下保證線程安全通常都會考慮加鎖。但是在特殊場景下我們也可以採用java.util.concurrent包提供的線程安全的對象,避免加鎖從而達到高效的目的。 但是,這些線程安全的對象僅僅指的是針對於原子性操作是線程

原创 JAVA插入排序

插入排序(Insertion sort)是一種簡單直觀且穩定的排序算法。如果有一個已經有序的數據序列,要求在這個已經排好的數據序列中插入一個數,但要求插入後此數據序列仍然有序,這個時候就要用到一種新的排序方法——插入排序法,插入排序的基本