原创 Java基礎--併發實用工具(2)

1.同步器之CountDownLatch 類的名稱的中文翻譯爲:倒數閂(倒數鎖存器)。操作線程時,有時候我們希望這個線程進行等待,直到一定數量的事件發生之後爲止。爲了處理這種情況,併發API提供了CountDownLatch類,Count

原创 Mac 解決Can't connect to MySQL server on '127.0.0.1' (61)

說明:並不是所有的Mac裝MySQL都會出現這個問題,即使裝的過程中出現了這個問題,如果下次再裝的話可能就沒有這個問題了,至於爲什麼?還煩請大神指點一二。 解決方法: 1.出現問題後,不改端口的話:圖中使用3306端口連接數據庫是連不上

原创 Java基礎--併發實用工具(1)

1.簡介 從一開始,Java就對多線程提供了內置支持。例如,可以通過實現Runnable接口或者擴展Thread類來創建新的線程;可以通過使用synchronized關鍵字來獲得同步支持;並且Object類庫定義了wait()和notif

原创 Java基礎--併發編程基礎(4)

1.死鎖 線程同步的時候會對對象監視器所監視的操作上鎖,也就是隻有當前線程能夠進來,其他線程是進不來的,除非你拿到了監視器。 死鎖:當線程A進入到了X對象的監視器內,線程B進入到了Y對象的監視器內,X對象的監視器內部調用了Y對象監視器內部

原创 Maven基礎--入門

簡介 Maven是一個面向項目的管理工具,OK,Maven有兩大優點:自動化編譯測試構建發佈和依賴管理。Maven的核心之一就是倉庫的概念,倉庫也是依賴管理的基礎。其實,Maven就是一個工具,就使用工具的層面上來說,最基礎的兩個方面,一

原创 關於架構師(刪繁就精)

軟件技術方向    職業通道:高級軟件工程師—主管軟件工程師——軟件架構師——高級架構師——技術專家    特點:善於獨立思考,做事謹慎細緻,熱衷於專研技術及其創新,對新技術敏感,技術涉面廣。屬專業技術人才。    準備:努力專研技術,緊

原创 關於初學者學習Java的一些注意事項

首先你要明白的是學習任何一種程序設計語言都有感到厭倦的時候,即使一開始學習的時候雄心勃勃的要學好。學習本身就是一個很難堅持的過程,所以你首先要堅信,

原创 Java基礎--併發編程基礎(1)

1.多任務處理 多任務處理分爲兩種不同的類型:基於進程的多任務處理和基於線程的多任務處理。 進程:進程是運行的程序,是操作系統進行調度和資源分配的基本單元。進程有獨立的內存空間,進程間的通信和進程間的上下文切換的開銷比較大。 線程:進程由

原创 private static與public static的用法及區別(Java)

其實,理解這兩者的區別並不難,因爲(public、private)和static這兩種修飾符的作用本就不同,所以要理解兩個的區別,其實就是這兩種修飾符效果累加起來之後的區別。 static:靜態修飾符,被static修飾的變量和方法類似於

原创 Java基礎--併發編程基礎(2)

1.線程同步 爲什需要線程同步?當多個線程訪問互斥資源(不一定是互斥資源,是需要限制訪問的資源,這裏舉一個互斥資源的例子)時,每次只能有一個線程進行訪問,這個過程叫做線程同步。譬如:你的筆記本壞了,筆記本是互斥資源要麼你在用,要麼給店員維

原创 Java基礎--併發編程基礎(3)

線程間通信 爲什麼要進行線程間通信?有一個很經典的例子就是生產者-消費者案例(簡化後):必須是生產者生產一個,消費者消費一個,沒有生產不能消費,沒有消費不能生產。生產者和消費者分別是兩個不同的線程,那這兩個線程在執行的時候必須相互通信才能

原创 課程論文:java架構師成長規劃

          Java架構師成長規劃 摘要: 全球步入信息時代後,軟件方面的職業日漸豐富:從最基礎的程序員到一種語言的架構師,從項目負責人到軟件公司CEO。而作爲軟件工程專業的大學生,選擇合適的職業是一件頗爲重要的事情。筆者在通過網

原创 常用排序算法-JAVA實現

直接上代碼。 import java.util.Arrays; public class Sort { public static void main(String[] args) { int[] sample = new

原创 Lucene原理

一、總論 根據http://lucene.apache.org/java/docs/index.html 定義: "Apache Lucene(TM) is a high-performance, full-featured te

原创 MySQL命令整理

注:下文中的$:僅僅是一行的開始,不是命令的一部分(雖然這是一句廢話) 1.可以使用多種方式連接上數據庫 2.在進行數據庫操作之前,需要先選擇數據庫,這個在命令行需要單獨輸入use*命令,但是在java中,在第一步中已經選擇好數據庫了 3