Java網(wǎng)絡(luò)編程從入門到精通(3):為什么不能直接通過(guò)IP訪問(wèn)網(wǎng)站
posted @ 2009-03-31 10:44 銀河使者 閱讀(4384) | 評(píng)論 (6) 編輯
隨筆 - 312, 文章 - 14, 評(píng)論 - 1393, 引用 - 0
|
03 2009 檔案Java網(wǎng)絡(luò)編程從入門到精通(3):為什么不能直接通過(guò)IP訪問(wèn)網(wǎng)站
摘要: 在《創(chuàng)建InetAddress對(duì)象的四個(gè)靜態(tài)方法》一文中通過(guò)getAllByName得到了www.csdn.net對(duì)應(yīng)的四個(gè)IP地址。從理論上說(shuō),在IE(或其他的Web瀏覽器,如Firefox)的地址欄中輸入這四個(gè)IP地址中的任何一個(gè),都可能訪問(wèn)www.csdn.net。如輸入http://211.100.26.124。但I(xiàn)E卻返回了一個(gè)錯(cuò)誤信息。在輸入另外三個(gè)IP后,都會(huì)得到同樣的錯(cuò)誤信息。 閱讀全文
posted @ 2009-03-31 10:44 銀河使者 閱讀(4384) | 評(píng)論 (6) 編輯 Java網(wǎng)絡(luò)編程從入門到精通(2):創(chuàng)建InetAddress對(duì)象的四個(gè)靜態(tài)方法
摘要: InetAddress類是Java中用于描述IP地址的類。它在java.net包中。在Java中分別用Inet4Address和Inet6Address類來(lái)描述IPv4和IPv6的地址。這兩個(gè)類都是InetAddress的子類。由于InetAddress沒有public的構(gòu)造方法,因此,要想創(chuàng)建InetAddress對(duì)象,必須得依靠它的四個(gè)靜態(tài)方法。InetAddress可以通過(guò)getLocalHost方法得到本機(jī)的InetAddress對(duì)象,也可以通過(guò)getByName、getAllByName和getByAddress得到遠(yuǎn)程主機(jī)的InetAddress對(duì)象。 閱讀全文
posted @ 2009-03-31 10:35 銀河使者 閱讀(5353) | 評(píng)論 (1) 編輯 IE8正式版下載地址
摘要: 在窗口右上方的工具欄按鈕設(shè)置上,IE8新增了一個(gè)“安全”下拉菜單,增強(qiáng)了頁(yè)面瀏覽的安全性考量,諸如刪除瀏覽歷史記錄、InPrivate瀏覽、網(wǎng)頁(yè)隱私策略等功能按鈕。 閱讀全文
posted @ 2009-03-25 11:45 銀河使者 閱讀(756) | 評(píng)論 (4) 編輯 Java網(wǎng)絡(luò)編程從入門到精通(1):Internet地址概述
摘要: 所有連入Internet的終端設(shè)備(包括計(jì)算機(jī)、PDA、打印機(jī)以及其他的電子設(shè)備)都有一個(gè)唯一的索引,這個(gè)索引被稱為IP地址。現(xiàn)在Internet上的IP地址大多由四個(gè)字節(jié)組成,這種IP地址叫做IPv4。除了這種由四個(gè)字節(jié)組成的IP,在Internet上還存在一種IP,這種IP由16個(gè)字節(jié)組成,叫做IPv6。IPv4和IPv6后面的數(shù)字是Internet協(xié)議(Internet Protocol,IP)的版本號(hào)。
閱讀全文 posted @ 2009-03-23 21:03 銀河使者 閱讀(6130) | 評(píng)論 (2) 編輯 Qt 4下連接MySQL數(shù)據(jù)庫(kù)
摘要: 前天剛裝了個(gè)Qt4for windows,發(fā)現(xiàn)安裝的時(shí)候MySQL等數(shù)據(jù)庫(kù)插件都沒有安裝,像Qt X11版一樣,都需要自己安裝這些插件。在Qt的安裝目錄C:\Qt4.1.2\下,有個(gè)src目錄,進(jìn)入plugins\sqldrivers\mysql,可以看到兩個(gè)文件,main.cpp和mysql.pro,很顯然要用qmake來(lái)完成編譯、生成目標(biāo)。編譯前,首先保證依賴的MySQL頭文件和庫(kù)文件正確。首先MySQL安裝目錄下的include中的所有文件拷到qmake時(shí)能找到的目錄下,接著從 lib/opt目錄下拷出libmysql.a,其實(shí)lib/opt下只有l(wèi)ibmysql.lib和libmysql.dll,從網(wǎng)上搜了一下找到一個(gè)方法從libmysql.dll生成libmysql.a: 閱讀全文
posted @ 2009-03-23 13:33 銀河使者 閱讀(4291) | 評(píng)論 (0) 編輯 Java多線程初學(xué)者指南(12):使用Synchronized塊同步變量
摘要: 我們可以通過(guò)synchronized塊來(lái)同步特定的靜態(tài)或非靜態(tài)方法。要想實(shí)現(xiàn)這種需求必須為這些特性的方法定義一個(gè)類變量,然后將這些方法的代碼用synchronized塊括起來(lái),并將這個(gè)類變量作為參數(shù)傳入synchronized塊。在使用synchronized塊時(shí)應(yīng)注意,synchronized塊只能使用對(duì)象作為它的參數(shù)。如果是簡(jiǎn)單類型的變量(如int、char、boolean等),不能使用synchronized來(lái)同步。 閱讀全文
posted @ 2009-03-22 21:26 銀河使者 閱讀(7324) | 評(píng)論 (4) 編輯 Java多線程初學(xué)者指南(11):使用Synchronized塊同步方法
摘要: synchronized關(guān)鍵字有兩種用法。第一種就是在《使用Synchronized關(guān)鍵字同步類方法》一文中所介紹的直接用在方法的定義中。另外一種就是synchronized塊。我們不僅可以通過(guò)synchronized塊來(lái)同步一個(gè)對(duì)象變量。也可以使用synchronized塊來(lái)同步類中的靜態(tài)方法和非靜態(tài)方法。 閱讀全文
posted @ 2009-03-22 21:15 銀河使者 閱讀(11343) | 評(píng)論 (1) 編輯 Java多線程初學(xué)者指南(10):使用Synchronized關(guān)鍵字同步類方法
摘要: 要想解決“臟數(shù)據(jù)”的問(wèn)題,最簡(jiǎn)單的方法就是使用synchronized關(guān)鍵字來(lái)使run方法同步。雖然可以使用synchronized來(lái)定義方法,但synchronized并不屬于方法定義的一部分,因此,synchronized關(guān)鍵字不能被繼承。如果在父類中的某個(gè)方法使用了synchronized關(guān)鍵字,而在子類中覆蓋了這個(gè)方法,在子類中的這個(gè)方法默認(rèn)情況下并不是同步的,而必須顯式地在子類的這個(gè)方法中加上synchronized關(guān)鍵字才可以。當(dāng)然,還可以在子類方法中調(diào)用父類中相應(yīng)的方法,這樣雖然子類中的方法不是同步的,但子類調(diào)用了父類的同步方法,因此,子類的方法也就相當(dāng)于同步了。 閱讀全文
posted @ 2009-03-20 13:05 銀河使者 閱讀(9744) | 評(píng)論 (4) 編輯 Java多線程初學(xué)者指南(9):為什么要進(jìn)行數(shù)據(jù)同步
摘要: Java中的變量分為兩類:局部變量和類變量。局部變量是指在方法內(nèi)定義的變量,如在run方法中定義的變量。對(duì)于這些變量來(lái)說(shuō),并不存在線程之間共享的問(wèn)題。因此,它們不需要進(jìn)行數(shù)據(jù)同步。類變量是在類中定義的變量,作用域是整個(gè)類。這類變量可以被多個(gè)線程共享。因此,我們需要對(duì)這類變量進(jìn)行數(shù)據(jù)同步。數(shù)據(jù)同步就是指在同一時(shí)間,只能由一個(gè)線程來(lái)訪問(wèn)被同步的類變量,當(dāng)前線程訪問(wèn)完這些變量后,其他線程才能繼續(xù)訪問(wèn)。這里說(shuō)的訪問(wèn)是指有寫操作的訪問(wèn),如果所有訪問(wèn)類變量的線程都是讀操作,一般是不需要數(shù)據(jù)同步的。 閱讀全文
posted @ 2009-03-19 13:23 銀河使者 閱讀(4955) | 評(píng)論 (1) 編輯 Java多線程初學(xué)者指南(8):從線程返回?cái)?shù)據(jù)的兩種方法
摘要: 從線程中返回?cái)?shù)據(jù)和向線程傳遞數(shù)據(jù)類似。也可以通過(guò)類成員以及回調(diào)函數(shù)來(lái)返回?cái)?shù)據(jù)。但類成員在返回?cái)?shù)據(jù)和傳遞數(shù)據(jù)時(shí)有一些區(qū)別,下面讓我們來(lái)看看它們區(qū)別在哪。 閱讀全文
posted @ 2009-03-19 13:02 銀河使者 閱讀(6889) | 評(píng)論 (0) 編輯 DB2認(rèn)證考試大綱
摘要: 包括DB2 Family Fundamentals(700 )、DB2 UDB V8.1 for Linux, UNIX, and Windows Database Administration(701)、DB2 UDB V8.1 Family Application Development(703)、DB2 UDB V8.1 for Linux, UNIX and Windows Advanced Database Administration(704)的考試大綱 閱讀全文
posted @ 2009-03-18 14:08 銀河使者 閱讀(836) | 評(píng)論 (0) 編輯 Java多線程初學(xué)者指南(7):向線程傳遞數(shù)據(jù)的三種方法
摘要: 在傳統(tǒng)的同步開發(fā)模式下,當(dāng)我們調(diào)用一個(gè)函數(shù)時(shí),通過(guò)這個(gè)函數(shù)的參數(shù)將數(shù)據(jù)傳入,并通過(guò)這個(gè)函數(shù)的返回值來(lái)返回最終的計(jì)算結(jié)果。但在多線程的異步開發(fā)模式下,數(shù)據(jù)的傳遞和返回和同步開發(fā)模式有很大的區(qū)別。由于線程的運(yùn)行和結(jié)束是不可預(yù)料的,因此,在傳遞和返回?cái)?shù)據(jù)時(shí)就無(wú)法象函數(shù)一樣通過(guò)函數(shù)參數(shù)和return語(yǔ)句來(lái)返回?cái)?shù)據(jù)。本文就以上原因介紹了幾種用于向線程傳遞數(shù)據(jù)的方法,在下一篇文章中將介紹從線程中返回?cái)?shù)據(jù)的方法。 閱讀全文
posted @ 2009-03-16 23:18 銀河使者 閱讀(15840) | 評(píng)論 (2) 編輯 年薪200萬(wàn)數(shù)據(jù)庫(kù)牛人牛新莊的成長(zhǎng)歷程
摘要: 牛新莊博士,研究方向?yàn)閿?shù)據(jù)倉(cāng)庫(kù)和數(shù)據(jù)挖掘。是IBM官方資深培訓(xùn)講師(培訓(xùn)DB2,AIX,MQ,WebSphere和CICS)。2002年獲IBM 杰出軟件專家獎(jiǎng),2006年獲“首屆中國(guó)杰出數(shù)據(jù)庫(kù)工程師獎(jiǎng)”、“2006年IT168技術(shù)卓越獎(jiǎng)”。是中信銀行、山東農(nóng)信、廣東農(nóng)信等公司資深技術(shù)顧問(wèn),中國(guó)建設(shè)銀行總行特聘資深技術(shù)專家。擁有OCP, AIX,DB2,HP-UX,MQ,CICS和WebSphere等二十多項(xiàng)國(guó)際認(rèn)證。著有《Oracle數(shù)據(jù)庫(kù)開發(fā)講座—— Oracle9i Jdeveloper與J2EE實(shí)務(wù)應(yīng)用》、《DB2應(yīng)用開發(fā)實(shí)戰(zhàn)指導(dǎo)》、《循序漸進(jìn)DB2-系統(tǒng)管理、運(yùn)行維護(hù)與應(yīng)用案例》、《深入解析DB2-高級(jí)管理、內(nèi)部體系結(jié)構(gòu)與診斷案例》和《DB2性能調(diào)整與優(yōu)化》等書。 閱讀全文
posted @ 2009-03-16 08:54 銀河使者 閱讀(1456) | 評(píng)論 (0) 編輯 Java多線程初學(xué)者指南(6):慎重使用volatile關(guān)鍵字
摘要: volatile關(guān)鍵字相信了解Java多線程的讀者都很清楚它的作用。volatile關(guān)鍵字用于聲明簡(jiǎn)單類型變量,如int、float、boolean等數(shù)據(jù)類型。如果這些簡(jiǎn)單數(shù)據(jù)類型聲明為volatile,對(duì)它們的操作就會(huì)變成原子級(jí)別的。不過(guò)在使用volatile關(guān)鍵字時(shí)也要慎重,并不是只要簡(jiǎn)單類型變量使用volatile修飾,對(duì)這個(gè)變量的所有操作都是原來(lái)操作,當(dāng)變量的值由自身的上一個(gè)決定時(shí),如n=n+1、n++等,volatile關(guān)鍵字將失效,只有當(dāng)變量的值和自身上一個(gè)值無(wú)關(guān)時(shí)對(duì)該變量的操作才是原子級(jí)別的,如n = m + 1,這個(gè)就是原級(jí)別的。所以在使用volatile關(guān)鍵時(shí)一定要謹(jǐn)慎,如果自己沒有把握,可以使用synchronized來(lái)代替volatile。 閱讀全文
posted @ 2009-03-14 16:44 銀河使者 閱讀(9403) | 評(píng)論 (10) 編輯 Java多線程初學(xué)者指南(5):join方法的使用
摘要: 在上面的例子中多次使用到了Thread類的join方法。我想大家可能已經(jīng)猜出來(lái)join方法的功能是什么了。對(duì),join方法的功能就是使異步執(zhí)行的線程變成同步執(zhí)行。也就是說(shuō),當(dāng)調(diào)用線程實(shí)例的start方法后,這個(gè)方法會(huì)立即返回,如果在調(diào)用start方法后后需要使用一個(gè)由這個(gè)線程計(jì)算得到的值,就必須使用join方法。如果不使用join方法,就不能保證當(dāng)執(zhí)行到start方法后面的某條語(yǔ)句時(shí),這個(gè)線程一定會(huì)執(zhí)行完。而使用join方法后,直到這個(gè)線程退出,程序才會(huì)往下執(zhí)行。 閱讀全文
posted @ 2009-03-12 09:07 銀河使者 閱讀(5985) | 評(píng)論 (14) 編輯 Java多線程初學(xué)者指南(4):線程的生命周期
摘要: 與人有生老病死一樣,線程也同樣要經(jīng)歷開始(等待)、運(yùn)行、掛起和停止四種不同的狀態(tài)。這四種狀態(tài)都可以通過(guò)Thread類中的方法進(jìn)行控制。 閱讀全文
posted @ 2009-03-11 12:15 銀河使者 閱讀(8270) | 評(píng)論 (3) 編輯 Java多線程初學(xué)者指南(3):使用Runnable接口創(chuàng)建線程
摘要: 實(shí)現(xiàn)Runnable接口的類必須使用Thread類的實(shí)例才能創(chuàng)建線程。通過(guò)Runnable接口創(chuàng)建線程分為兩步:1. 將實(shí)現(xiàn)Runnable接口的類實(shí)例化。2. 建立一個(gè)Thread對(duì)象,并將第一步實(shí)例化后的對(duì)象作為參數(shù)傳入Thread類的構(gòu)造方法。最后通過(guò)Thread類的start方法建立線程。 閱讀全文
posted @ 2009-03-10 11:56 銀河使者 閱讀(5873) | 評(píng)論 (0) 編輯 Java多線程初學(xué)者指南(2):用Thread類創(chuàng)建線程
摘要: 一個(gè)普通的Java類只要從Thread類繼承,就可以成為一個(gè)線程類。并可通過(guò)Thread類的start方法來(lái)執(zhí)行線程代碼。雖然Thread類的子類可以直接實(shí)例化,但在子類中必須要覆蓋Thread類的run方法才能真正運(yùn)行線程的代碼。 閱讀全文
posted @ 2009-03-07 14:06 銀河使者 閱讀(6556) | 評(píng)論 (5) 編輯 Java多線程初學(xué)者指南(1):線程簡(jiǎn)介
摘要: 線程是程序運(yùn)行的基本執(zhí)行單元。當(dāng)操作系統(tǒng)(不包括單線程的操作系統(tǒng),如微軟早期的DOS)在執(zhí)行一個(gè)程序時(shí),會(huì)在系統(tǒng)中建立一個(gè)進(jìn)程,而在這個(gè)進(jìn)程中,必須至少建立一個(gè)線程(這個(gè)線程被稱為主線程)來(lái)作為這個(gè)程序運(yùn)行的入口點(diǎn)。因此,在操作系統(tǒng)中運(yùn)行的任何程序都至少有一個(gè)主線程。 閱讀全文
posted @ 2009-03-07 13:43 銀河使者 閱讀(5241) | 評(píng)論 (0) 編輯 好萊塢勁刮科幻風(fēng)——十部即將上映的科幻巨制
摘要: 不管你愛不愛,現(xiàn)在是科幻片的時(shí)代。在經(jīng)濟(jì)形勢(shì)如此不景氣的今天,我們需要更多幫助我們超脫現(xiàn)實(shí)的來(lái),呃,姑且說(shuō)逃避現(xiàn)實(shí)好了。不過(guò)話說(shuō)回來(lái),有誰(shuí)不愛看那些制作精良、情節(jié)扣人心弦的科幻電影呢?那種窺探未來(lái)世界的欲望以及看到更美好明天的希望總是拖拽著我們一次次的坐在大銀幕之前瞠目結(jié)舌著讓爆米花從張大的嘴里掉出來(lái)。特別是對(duì)于年輕的男性影迷來(lái)說(shuō),那些巨大的機(jī)器人、可飛行的滑板、宇宙飛船或是任何形式的未來(lái)派機(jī)械的吸引力并不亞于任何安妮·海瑟薇那樣的九頭身美女。我們幻想乘坐宇宙飛船或時(shí)間機(jī)器到達(dá)不論時(shí)間還是空間都極遙遠(yuǎn)的異域,或者去冒險(xiǎn),或者去尋找希望。所以也就無(wú)怪乎從1902年首部科幻影片——喬治斯·梅里耶(Georges Melies)的《月球旅行記》(Trip to the Moon)——問(wèn)世以來(lái),科幻題材的電影一直風(fēng)行到現(xiàn)在。
閱讀全文 posted @ 2009-03-03 19:03 銀河使者 閱讀(842) | 評(píng)論 (0) 編輯
|
|