Time of Update: 2018-12-06
java.net.ConnectException: Call to master/192.168.137.101:9001 failed on connection exception: java.net.ConnectException: Connection refused at org.apache.hadoop.ipc.Client.wrapException(Client.java:1099) at
Time of Update: 2018-12-06
今天試著在Linux下面搭建java開發環境,現總結一下具體步驟。1、JDK的安裝執行下面命令安裝JDK(首先建立/opt/java目錄)tar -xvf jdk-7u9-linux-i586.tar.gz -C /opt/javaln -s /opt/java/jdk1.7.0_09 /opt/java/jdk 建立一個連結vi /etc/frofile 設定環境變數export JAVA_HOME=/opt/java/jdkexprot
Time of Update: 2018-12-06
今天把hadoop環境給搭起來了,在master上面啟動hadoop後,jps查看進程,SecondaryNameNode NameNode Jps DataNode JobTracker TaskTracker都沒問題。但是去http://master:50070/dfshealth.jsp查看,live nodes為0。所以我到slave1和slave2上面去執行jps查看進程,結果都沒有datanode進程,也就是說datanode沒有啟動成功,所以我就到logs裡面去執行less
Time of Update: 2018-12-06
在java程式運行過程中,有許多的對象同時存在,但是程式結束運行或者JVM停止運行時這些對象都會消失。如何將這些對象儲存起來以便下一次再將這些對象讀入記憶體呢?或者如何將某些對象通過網路傳到另一端的java程式?實施對象的這種操作叫做對象的序列化(或者叫做持久化),重新讀入記憶體叫做還原序列化。 基礎資料型別 (Elementary Data Type)的封裝類和所有容器類都可以被序列化。使用者自訂的類預設是不可以被序列化的。如果想要自己定義的類可以序列化就必須讓這個類實現java.io.
Time of Update: 2018-12-06
JDK6.0推出了動態編譯的新功能,能夠在程式中動態寫一個類,再對之進行編譯。編譯成class檔案後就可以通過類載入方式把動態編譯的類載入到記憶體中。當然也能通過RunTime類調用javac命令來動態編譯。 動態編譯類的主要步驟: ①、寫一個字串,這個字串就是要編譯的類的全部內容。 ②、通過輸出資料流,把該字串的內容寫到工程下面指定的包中。 ③、對建立的java檔案進行編譯。 動態編譯涉及的類有JavaCompiler、StandardJavaFileManager,具體如何
Time of Update: 2018-12-06
Java在執行個體化一個對象的時候,如果沒有顯式使用super(),則會先調用父類的無參建構函式(不是和自己建構函式參數數量對應的那個),然後調用子類的建構函式,如果父類不是Object類,則一直向上追溯到Object類為止,super()只能在建構函式的第一行使用,在別的地方使用均為非法,一般情況下建構函式不用寫super(),但是如果一個類有多個建構函式的時候,為了便於理解,往往要顯式調用super()。下面範例程式碼的運行結果為:I am fatherI am son:baiduI am
Time of Update: 2018-12-06
The conditional compilation practice is used to optionally remove chunks of code from the compiled version of a class. It uses the fact that compilers will ignore any unreachable branches of code. To implement conditional compilation, * define a
Time of Update: 2018-12-06
使用JAVA的random類可以來產生隨機數,但不要每次使用都new Random這個類對象,因為這個類是以當前系統時間來作為seed產生隨機數的,如果每次都new(特別是在一個迴圈裡面new,間隔時間非常短),那麼,產生的隨機數就有可能都是一樣的,或是非常相近的! For example: 不要這樣寫: for (int i = 0; i < 100; i++) { System.out.println(new Random().nextInt()); } 要這樣寫: private
Time of Update: 2018-12-06
float,double都有誤差,適合做科學計算或工程計算,像商業應用,特別是購物,計費等系統,就一定要用這個BigDecimal,精確。 比如我們定義一個double是0.01,可能將來列印出來或計算的時候,實際上是0.010000000003456這樣的數值,那麼,如果我們用這樣的數值去計算的話,隨著計算的增多和double數的增多,誤差就會越來越大,這在商業計算中是不允許的。比如,有可能10塊錢在我們程式中就是9.999999999999348,這樣,這個人就買不了10塊錢的東西了。 而且
Time of Update: 2018-12-06
方法一:繼承 Thread 類,覆蓋方法 run(),我們在建立的 Thread 類的子類中重寫 run() ,加入線程所要執行的代碼即可。下面是一個例子: Code highlighting produced by Actipro CodeHighlighter
Time of Update: 2018-12-06
眾所周知,Sun和MS的一場官司最終有了個很不好的結局:雙方分道揚鑣了。最倒黴的當然是我們這些java程式員了,一個很不利的一點在於WEB上的JAVA技術的實現。下面以我嘗試在applet中使用JAVA2平台標準版中的最新的Swing技術為例,闡述一下相應的入門問題。 先澄清幾個概念:1):JDK和J2SDk:J2SDk包含了Java Development kit(JDK)、Java Runtime Environment(JRE)和Java
Time of Update: 2018-12-06
這幾天在回顧原來的知識,發現知識一段時間不整理的話很多東西手生的很,今天剛剛想在dos下運行一個java類卻出錯了.Exception in thread "main" java.lang.NoClassDefFoundError 為什麼呢?後面找了許久發現是類中帶有包名的問題. 1.當類沒有包時dos下 javac Test.java //編譯Test類,生產class檔案 java Test
Time of Update: 2018-12-06
在 NIO 庫中,所有資料都是用緩衝區處理的。在讀取資料時,它是直接讀到緩衝區中的。在寫入資料時,它是寫入到緩衝區中的。任何時候訪問 NIO 中的資料,都是將它放到緩衝區中。緩衝區實質上是一個數組。通常它是一個位元組數組,但是也可以使用其他種類的數組。但是一個緩衝區不僅僅是一個數組。緩衝區提供了對資料的結構化訪問,而且還可以跟蹤系統的讀/寫進程。 buffer其實只是一個美化了的數組。狀態變數跟蹤資料的狀態情況使buffer可以自己管理資料資源 position:
Time of Update: 2018-12-06
一、類集架構是一組類和介面二、位於java.util包中三、主要用於儲存和管理對象四、主要分為三大類---集合、列表和映射 集合(Set)列表(List)映射(Map) 繼承和實現關係Iterator(Interface)...
Time of Update: 2018-12-06
DateVersionComment1995-05-231.0Sun推出第一個Java文法及瀏覽器HotJava。1997-02-181.1 1998-12-041.2發布JDK 1.2,這個版本就是熟知的Java 2。2000-05-081.3 2002-02-131.4 2004-09-291.5原名為1.5版的新版本,更名為Java5.020051.5將三個成員分別改名為Java EE、Java SE及Java ME2006-12-121.6Sun公司發布Java 6.0版。200
Time of Update: 2018-12-06
經實際驗證,有如下結論:1. 對於基本類型(只能用==)== 比較值2. 對於基本類型的封裝類(Boolean ,Integer,Double,Long,Float)== 比較地址equals 比較值3. 對於類對象== 比較地址equals 比較值4. 對於String== 比較地址equals 比較值 驗證用代碼如下:import java.util.ArrayList;public
Time of Update: 2018-12-06
Java提供了兩類主要的異常:runtime exception和checked exception。checked 異常也就是我們經常遇到的IO異常,以及SQL異常都是這種異常。對於這種異常,JAVA編譯器強制要求我們必需對出現的這些異常進行catch。所以,面對這種異常不管我們是否願意,只能自己去寫一大堆catch塊去處理可能的異常。 但是另外一種異常:runtime
Time of Update: 2018-12-06
我想任何一本介紹模式的書在講到Decorator模式的時候不能不提到它的實際應用--在Java/IO庫裡面的應用,<<Java與模式>>這本書也不例外,有點不一樣的是,這本書在介紹的時候有個專題,是從兩個模式來看Java/IO庫,完這個專題後,個人感覺對Java/IO庫有了全新的認識同時也加深了Decorator模式跟Adapter適配器模式的理解,現和大家分享下這個在我看來很偉大的成果,同時說明下,以下大部分文字跟圖片是來自<<Java與模式>>
Time of Update: 2018-12-06
本文考察了 Java 語言的本地代碼編譯所涉及的一些問題。單獨使用動態(即時)編譯或靜態(提前)編譯都不能滿足所有 Java 應用程式的需求。作者在各種執行環境中對這兩種編譯技術進行了比較,對二者如何相互補充進行了展示。Java 應用程式的效能經常成為開發社區中的討論熱點。因為該語言的設計初衷是使用解釋的方式支援應用程式的可移植性目標,早期 Java 運行時所提供的效能層級遠低於 C 和 C++
Time of Update: 2018-12-06
GC的基本原理GC是什麼?為什麼要有GC呢?GC是垃圾收集的意思(GarbageCollection),記憶體處理是編程人員容易出現問題的地方,忘記或者錯誤的記憶體回收會導致程式或系統的不穩定甚至崩潰,Java提供的GC功能可以自動監測對象是否超過範圍從而達到自動回收記憶體的目的,Java語言沒有提供釋放已指派記憶體的顯示操作方法。所以,Java的記憶體管理實際上就是對象的管理,其中包括對象的分配和釋放。對於程式員來說,指派至使用new關鍵字;釋放對象時,只要將對象所有引用賦值為null,讓程式