ZT文萃

          本博不原創(chuàng),轉(zhuǎn)帖自己感興趣那些事人物,什么入眼貼什么,隨心所欲。
          posts - 93, comments - 5, trackbacks - 0, articles - 0
            BlogJava :: 首頁(yè) :: 新隨筆 :: 聯(lián)系 :: 聚合  :: 管理

          2014年2月20日

          移動(dòng)互聯(lián)網(wǎng),就是將移動(dòng)通信和互聯(lián)網(wǎng)二者結(jié)合起來(lái),成為一體。
          4G時(shí)代的開啟以及移動(dòng)終端設(shè)備的凸顯必將為移動(dòng)互聯(lián)網(wǎng)的發(fā)展注入巨大的能量,2014年移動(dòng)互聯(lián)網(wǎng)產(chǎn)業(yè)必將帶來(lái)前所未有的飛躍。

          度娘百科詳解:http://baike.baidu.com/view/1168245.htm

           


          云計(jì)算(英語(yǔ):Cloud Computing),是一種基于互聯(lián)網(wǎng)的計(jì)算方式,通過(guò)這種方式,共享的軟硬件資源和信息可以按需求提供給計(jì)算機(jī)和其他設(shè)備。

          云 計(jì)算是繼1980年代大型計(jì)算機(jī)到客戶端-服務(wù)器的大轉(zhuǎn)變之后的又一種巨變。用戶不再需要了解“云”中基礎(chǔ)設(shè)施的細(xì)節(jié),不必具有相應(yīng)的專業(yè)知識(shí),也無(wú)需直 接進(jìn)行控制。[1]云計(jì)算描述了一種基于互聯(lián)網(wǎng)的新的IT服務(wù)增加、使用和交付模式,通常涉及通過(guò)互聯(lián)網(wǎng)來(lái)提供動(dòng)態(tài)易擴(kuò)展而且經(jīng)常是虛擬化的資源。

          度娘百科詳解:http://baike.baidu.com/view/1316082.htm?fr=aladdin
           


          大 數(shù)據(jù)(英語(yǔ):Big data),或稱巨量數(shù)據(jù)、海量數(shù)據(jù)、大數(shù)據(jù),指的是所涉及的數(shù)據(jù)量規(guī)模巨大到無(wú)法通過(guò)人工,在合理時(shí)間內(nèi)達(dá)到截取、管理、處理、并整理成為人類所能解讀 的信息。在總數(shù)據(jù)量相同的情況下,與個(gè)別分析獨(dú)立的小型數(shù)據(jù)集(data set)相比,將各個(gè)小型數(shù)據(jù)集合并后進(jìn)行分析可得出許多額外的信息和數(shù)據(jù)關(guān)系性,可用來(lái)察覺商業(yè)趨勢(shì)、判定研究質(zhì)量、避免疾病擴(kuò)散、打擊犯罪或測(cè)定實(shí)時(shí) 交通路況等;這樣的用途正是大型數(shù)據(jù)集盛行的原因。

          度娘百科詳解:http://baike.baidu.com/subview/6954399/13647476.htm?fr=aladdin

           


          O2O(Online To Offline)模式,又稱離線商務(wù)模式,是指線上營(yíng)銷線上購(gòu)買帶動(dòng)線下經(jīng)營(yíng)和線下消費(fèi)。O2O通過(guò)促銷、打折、提供信息、服務(wù)預(yù)訂等方式,把線下商店的 消息推送給互聯(lián)網(wǎng)用戶,從而將他們轉(zhuǎn)換為自己的線下客戶,這就特別適合必須到店消費(fèi)的商品和服務(wù),比如餐飲、健身、電影和演出、美容美發(fā)、攝影及百貨商店 等。

          度娘百科詳解:http://baike.baidu.com/subview/4717113/13607799.htm?fr=aladdin

          一些O2O案列:Groupon、OpenTable、易到用車

          posted @ 2014-11-05 23:07 ZT文萃 閱讀(1366) | 評(píng)論 (0)編輯 收藏

          亂講,誰(shuí)說(shuō)我們2002年倒數(shù)第一的啊

          不還有沙特了么

          再說(shuō)了,中國(guó)隊(duì)多牛B洋人不知道嗎

          在長(zhǎng)達(dá)84年十九屆世界杯的歷史上
          僅有三支國(guó)家隊(duì)?wèi)?zhàn)勝過(guò)中國(guó)國(guó)家隊(duì)
          分別是巴西、土耳其、哥斯達(dá)黎加

          即使是巴西這樣的世界強(qiáng)隊(duì)也僅戰(zhàn)勝過(guò)中國(guó)隊(duì)一次。

          而中國(guó)隊(duì)從未在世界杯點(diǎn)球大戰(zhàn)中失利過(guò),
          從來(lái)沒有一支球隊(duì)能夠在世界杯上擊敗過(guò)中國(guó)隊(duì)兩次。

          從數(shù)據(jù)分析中可以看的出,世界杯史上共產(chǎn)生八支冠軍球隊(duì),
          也只有巴西隊(duì)曾經(jīng)戰(zhàn)勝過(guò)中國(guó)隊(duì)。
          歐洲諸強(qiáng)德西荷法英意葡等從來(lái)沒有世界杯上戰(zhàn)勝過(guò)中國(guó)。

          而且,中國(guó)隊(duì)在世界杯上丟球數(shù)遠(yuǎn)少于足球之國(guó)巴西和以防守見長(zhǎng)的意大利,
          在過(guò)去84年里,中國(guó)隊(duì)只丟了9個(gè)球。

          除此之外,世界上除了巴西,中國(guó)是另外一支敢在胸前繡五顆星的隊(duì)。

          posted @ 2014-06-16 21:36 ZT文萃 閱讀(242) | 評(píng)論 (0)編輯 收藏

          釋迦牟尼在《佛譬喻經(jīng)》中,講了一段有名的譬喻,這譬喻是這樣的:
                在一個(gè)寂寞的秋天黃昏,無(wú)盡廣闊的荒野中,有一位旅人趕著路。突然,旅人發(fā)現(xiàn)薄暗的野道中,散落著一塊塊白白的東西,仔細(xì)一看,原來(lái)是人的白骨。
                旅人正疑惑思考時(shí),忽然從前方傳來(lái)驚人的咆哮聲,隨著一只大老虎緊逼而來(lái)。看到這只老虎,旅人頓時(shí)了解白骨的原因,立刻向來(lái)時(shí)的道路拔腿逃跑。
                但顯然是迷失了道路,旅人竟跑到一座斷崖絕壁的頂上。在毫無(wú)辦法之中,幸好發(fā)現(xiàn)斷崖上有一顆松樹,并且從樹枝上垂下一條藤蔓。旅人便毫不猶豫,馬上抓著藤蔓垂下去,可謂九死一生。
                老虎眼看好不容易即將入口的食物,居然被逃離,可以想象它是如何懊惱地在崖上狂吼著。
                好感謝啊!幸虧有這藤蔓,終于救了寶貴一命。旅人暫時(shí)安心了。但是當(dāng)他朝腳下一看時(shí),不禁啊了一聲,原來(lái)腳下竟是波濤洶涌、底不可測(cè)的深海,怒浪澎湃著,而且在那波濤間還有三條毒龍,正張開大口等待著他的墜落。旅人不知不覺全身戰(zhàn)栗起來(lái)。
                但更恐怖的是,依靠救生的藤蔓,在其根接處出現(xiàn)了兩只白色和黑色的老鼠,正在交互地啃著藤蔓。旅人拼命搖動(dòng)藤蔓,想趕走老鼠,可是老鼠一點(diǎn)也沒有逃開的樣 子。而且每次搖動(dòng)藤蔓,便有水滴從上面落下來(lái),這是樹枝上蜂巢所滴下的蜂蜜。由于蜂蜜太甜了,旅人竟完全忘記自己正處于危險(xiǎn)萬(wàn)分的境地,此心陶陶然地被蜂 蜜所奪。
                這愚癡的旅人之相,便是所有人類的人生之真相。那么釋迦穆尼這段譬喻意味著什么呢?

          1、孤獨(dú)的心靈
          旅人:這旅人是指我們自己。
          荒野:無(wú)盡而寂寞的荒野是譬喻我們無(wú)盡寂寞的人生。
          秋天的黃昏:秋天的黃昏是譬喻人生的孤寂感。
          白骨:路邊的白骨是指我們?nèi)松猛局校易濉⒂H屬、朋友等的死亡。我們活到現(xiàn)在,應(yīng)該看到很多白骨,那時(shí)我們有何想法?有何感觸?我們可曾注意到緊逼而來(lái)的“無(wú)常之虎”?
          老虎:饑餓的老虎所譬喻的,既是我們自己的死亡。

          2、無(wú)力的松樹
          松樹:接著我們攀上崖頂?shù)乃蓸洌蓸涫侵附疱X、財(cái)產(chǎn)、名譽(yù)、地位等等。這些東西即使擁有再多,在死亡的面前也仍是無(wú)力的。

          3、人生是夢(mèng)
          藤蔓:藤蔓所譬喻的是“還不會(huì)!還不會(huì)!我還不會(huì)死”的那種以為還有二十年、三十年的壽命可依恃,但即使認(rèn)為還有十年、還有二十年可活著,但你認(rèn)為到底人 壽幾何?想想便知:已過(guò)去的十年二十年,也不過(guò)是《啊》的一聲之間,便如夢(mèng)如幻般地消逝了。而今后的十年二十年,也同樣是《啊》的一聲之間便會(huì)過(guò)去。
          老鼠:咬著藤蔓的白老鼠和黑老鼠是指白天和晚上。白天的白老鼠和晚上的黑老鼠,在相互地縮短著我們的壽命。

          4,后生大事
          深海:深海所譬喻的便是地獄。墜入此地獄,必須承受八萬(wàn)劫中大苦惱,這一件事情便稱為——后生一大事。
          毒龍:顯現(xiàn)地獄之苦的是這三條毒龍,這三條毒龍指我們自己內(nèi)心的貪欲、嗔怒、愚癡。
                “善因善果、惡因惡果、自因自果”的因果法則是不會(huì)有絲毫差錯(cuò)的。由自己所不斷造作的罪惡所生出的地獄,最后還是由自己墜入。

          posted @ 2014-06-13 15:44 ZT文萃 閱讀(210) | 評(píng)論 (0)編輯 收藏

          其實(shí)都是些很簡(jiǎn)單的東西
          如果有CLER認(rèn)為這些東西發(fā)出來(lái)沒必要那  朕只能說(shuō)抱歉

          如果看了帖子 對(duì)進(jìn)有那么一點(diǎn)幫助 請(qǐng)cler 回帖支持下 讓更多的 朋友可以了解下,很多問題,可以從開機(jī)看出問題
          謝謝

          為 使用電腦時(shí)間比較長(zhǎng)的老用戶,難免會(huì)到朋友或同事家?guī)兔S護(hù)、維修電腦,有時(shí)還要幫人購(gòu)買PC,這時(shí)我們肯定會(huì)帶上硬件檢測(cè)軟件,不過(guò),誰(shuí)也不能隨身總是 帶著這些軟件,如果手頭上沒有合適的檢測(cè)軟件該怎么辦呢?總不能因此就什么都不知道吧?那樣你的高手形象大大會(huì)受損的,其實(shí),離開這些軟件我們也能明明白 白查看電腦硬件的配置情況。下面我們就來(lái)一起學(xué)習(xí)一下吧。  

            一、開機(jī)自檢中查看硬件配置  

            機(jī)器組裝結(jié)束后即使不裝操作系統(tǒng)也可以進(jìn)行加電測(cè)試,在開機(jī)自檢的畫面中就隱藏著硬件配置的簡(jiǎn)單介紹喲(由于開機(jī)畫面一閃而過(guò),要想看清楚的話,記得及時(shí)伸手按住“PAUSE”鍵)。

            1.顯卡信息  

             開機(jī)自檢時(shí)首先檢查的硬件就是顯卡,因此啟動(dòng)機(jī)器以后在屏幕左上角出現(xiàn)的幾行文字就是有顯卡的“個(gè)人資料”介紹。四行文字中,第一行“GeForce4 MX440……”標(biāo)明了顯卡的顯示核心為GeForce4 MX440、支持AGP 8X技術(shù);第二行“Version……”標(biāo)明了顯卡BIOS的版本,我們可以通過(guò)更新顯卡BIOS版本“榨取”顯卡性能,當(dāng)然更新后這一行文字也會(huì)隨之發(fā) 生變化;第三行“Copyright (C)……”則為廠商的版權(quán)信息,標(biāo)示了顯示芯片制造廠商及廠商版權(quán)年限;第四行“64.0MB RAM”則標(biāo)明了顯卡顯存容量。  

            2.CPU及硬盤、內(nèi)存、光驅(qū)信息  

            顯示完顯卡的基本信息之后,緊接著出 現(xiàn)的第二個(gè)自檢畫面則顯示了更多的硬件信息,像CPU型號(hào)、頻率、內(nèi)存容量、硬盤及光驅(qū)信息等都會(huì)出現(xiàn)在此畫面中。該畫面最上面兩行文字標(biāo)示了主板 BIOS版本及BIOS制造商的版權(quán)信息;緊接著的文字一看就明白啦,當(dāng)然是主板芯片組嘍;其下幾行文字則標(biāo)明了CPU的頻率及內(nèi)存容量、速度。下面四行 “IDE……”則標(biāo)明了連接在IDE主從接口上的設(shè)備,包括硬盤型號(hào)及光驅(qū)型號(hào)等等。
            
            3.主板信息 

            在第二 個(gè)自檢畫面的最下方還會(huì)出現(xiàn)一行關(guān)于主板的信息,前面的日期顯示的是當(dāng)前主板的BIOS更新日期,后面的符號(hào)則是該主板所采用的代碼,根據(jù)代碼我們可以了 解主板的芯片組型號(hào)和生產(chǎn)廠商。以往老主板的自檢畫面中最下方文字的中間標(biāo)明的是主板芯片組,這一塊板子則將其提到了自檢畫面的上方。  

            機(jī)器啟動(dòng)之后按“DEL”鍵進(jìn)入BIOS設(shè)置頁(yè)面,在基本信息中同樣也可以看到機(jī)器的硬件信息,與開機(jī)畫面顯示的沒有區(qū)別。

            二、利用設(shè)備管理器查看硬件配置  

             進(jìn)入操作系統(tǒng)之后,在安裝硬件驅(qū)動(dòng)程序的情況下還可以利用設(shè)備管理器與DirectX診斷工具來(lái)查看硬件配置。下面看看如何利用設(shè)備管理器查看硬件信 息。進(jìn)入桌面,鼠標(biāo)右擊“我的電腦”圖標(biāo),在出現(xiàn)的菜單中選擇“屬性”,打開“系統(tǒng)屬性”窗口,點(diǎn)擊“硬件--設(shè)備管理器”,在“設(shè)備管理器”中顯示了機(jī) 器配置的所有硬件設(shè)備。從上往下依次排列著光驅(qū)、磁盤控制器芯片、CPU、磁盤驅(qū)動(dòng)器、顯示器、鍵盤、聲音及視頻等信息,最下方則為顯示卡。想要了解哪一 種硬件的信息,只要點(diǎn)擊其前方的“+”將其下方的內(nèi)容展開即可。  
            利用設(shè)備管理器除了可以看到常規(guī)硬件信息之外,還可以進(jìn)一步了解主板芯片、聲卡及硬盤工作模式等情況。例如想要查看硬盤的工作模式,只要雙擊相應(yīng)的IDE通道即可彈出屬性窗口,在屬性窗口中可輕檢看到硬盤的設(shè)備類型及傳送模式。這些都是開機(jī)畫面所不能提供的。  

            需要注意的是在Windows Xp之前的操作系統(tǒng)中所提供的設(shè)備管理器是無(wú)法用來(lái)查看CPU工作頻率的,好在我們還有DirectX診斷工具。  

             三、利用DirectX診斷工具查看硬件配置  

             DirectX診斷工具可以幫助我們對(duì)硬件工作情況作出測(cè)試、診斷并進(jìn)行修改,當(dāng)然我們也可以利用它來(lái)查看機(jī)器的硬件配置。運(yùn)行“系統(tǒng)信息”窗口,找到 “工具--DirectX診斷工具”(或者進(jìn)入安裝盤符中Windows目錄下的System32目錄中運(yùn)行Dxdiag.exe),在窗口中可以方便地 查看硬件信息。

            1.查看基本信息  

            在“DirectX診斷工具”窗口中點(diǎn)擊“系統(tǒng)”選項(xiàng)卡,當(dāng)前日期、計(jì)算機(jī) 名稱、操作系統(tǒng)、系統(tǒng)制造商及BIOS版本、CPU處理器頻率及及內(nèi)存容量一目了然。注意嘍,雖然我將Celeron 2.0MHz超頻至2.40MHz使用,但是DirectX卻不認(rèn)這個(gè)帳,依然顯示的是未超頻的原始頻率。看來(lái)沒有AIDA32,我們同樣也可以識(shí)別奸商 是否將超頻的CPU賣給我們!!  

            2.查看顯卡信息  

            在“DirectX診斷工具”窗口中點(diǎn)擊“顯示”選項(xiàng)卡,在這里我們可以看到顯卡的制造商、顯示芯片類型、顯存容量、顯卡驅(qū)動(dòng)版本、監(jiān)視器等常規(guī)信息。  

            3.查看音頻信息  

            音頻設(shè)備往往為人所忽視,但缺了它又不行,單擊“聲音”選項(xiàng)卡,對(duì)其做一番了解吧!同樣在出現(xiàn)的窗口中能看到設(shè)備的名稱、制造商及其驅(qū)動(dòng)程序等等極為詳細(xì)的資料。不同的是我們還可以點(diǎn)擊右下角的“測(cè)試DirectSound(T)”對(duì)聲卡進(jìn)行一下簡(jiǎn)單的測(cè)試。  
          怎么樣,經(jīng)過(guò)這一番了解,是不是感覺很受益?

          題外話,由于主板更新頻繁,現(xiàn)在很多主板BIOS有快速啟動(dòng)功能,以上很多信息都被瞬間屏蔽掉了。需要看自檢的信息,需要到BIOS設(shè)置。但是以上講的信息,能讓你明白,計(jì)算機(jī)如何自檢。

          posted @ 2014-06-10 22:57 ZT文萃 閱讀(227) | 評(píng)論 (0)編輯 收藏

          http://kb.cnblogs.com/page/192251/

          這些日子我一直在寫一個(gè)實(shí)時(shí)操作系統(tǒng)內(nèi)核,已有小成了,等寫完我會(huì)全部公開,希望能夠?yàn)閲?guó)內(nèi)IT的發(fā)展盡自己一份微薄的力量。最近看到很多學(xué)生朋友和我當(dāng)年一樣沒有方向 ,所以把我的經(jīng)歷寫出來(lái)與大家共勉,希望能給剛?cè)缧械呐笥褌円稽c(diǎn)點(diǎn)幫助。

            一轉(zhuǎn)眼我在IT行業(yè)學(xué)習(xí)工作已經(jīng)七年多了,這期間我做過(guò)網(wǎng)頁(yè),寫過(guò)MIS、數(shù)據(jù)庫(kù),應(yīng)用程序,做過(guò)通信軟件、硬件驅(qū)動(dòng)、協(xié)議棧,到現(xiàn)在做操作系統(tǒng)內(nèi)核和IC相關(guān)開發(fā),這中間走了很多彎路,也吃了不少苦。

            我上的是一個(gè)三流的高校,就連同一個(gè)城市的人多數(shù)都不知道。因?yàn)閷W(xué)校不好也就沒有指望能靠學(xué)校名氣找一個(gè)好工作。所有的希望都寄托在自己的努力 上了,大一開學(xué)前的假期我就開始了學(xué)習(xí)。記得我買的第一本書是《計(jì)算機(jī)基礎(chǔ)DOS3.0》,大家別嚇著了,其實(shí)當(dāng)時(shí)已經(jīng)普及了DOS6.22了,只是我在 書店里看到了DOS4.0/5.0/6.0的書,以為像英語(yǔ)那樣是第四、五、六冊(cè),記得當(dāng)時(shí)到處找DOS1.0,現(xiàn)在想想也幸好我沒有找到:)。開學(xué)前我 學(xué)完了PASCAL,那時(shí)既沒有計(jì)算機(jī)也沒有人可以請(qǐng)教,我連程序是什么的概念都沒有,只好死記硬背代碼,然后拿紙寫。我一直到大三才有了一臺(tái)486,在 這之前用紙寫了多少程序我也記不清楚了,只知道最長(zhǎng)的一個(gè)我拿A4大小的草稿紙寫了30多頁(yè),我的C語(yǔ)言、C++ 、VC都是在這樣的條件下入門的。

            所以說(shuō)條件是可以克服的,希望我的經(jīng)歷多少給條件艱苦的同學(xué)們一點(diǎn)信心。第一次上機(jī)是在我姐夫的機(jī)房,我的心情激動(dòng)的無(wú)與倫比,但是一上機(jī)我立 刻傻了眼,他們用的是英文版的Win3.1,我的那點(diǎn)DOS知識(shí)都見了鬼,上機(jī)提心吊膽的一陣瞎摸,一不小心把Word弄成了全屏,怎么都還不了原,當(dāng)時(shí) 真是心急如焚,我以機(jī)器被我弄壞了。第一個(gè)C語(yǔ)言程序,就是那個(gè)經(jīng)典的HelloWorld,我調(diào)了幾個(gè)星期,上機(jī)機(jī)會(huì)非常少,也沒有書告訴我開發(fā)環(huán)境 (TC2.0)需要設(shè)置,而且開始我都不知道有編譯器,我甚至自作聰明把寫好的程序擴(kuò)展名從.c改成.exe,結(jié)果可想而知。

            大一學(xué)完了C、X86的匯編、數(shù)據(jù)結(jié)構(gòu)、C++ 。由于精力都花在自學(xué)上了,大一下四門課掛了彩,三類學(xué)校就是這點(diǎn)好,掛上一二十門也照樣畢業(yè)。不過(guò)扯遠(yuǎn)點(diǎn)說(shuō),我那么刻苦都及不了格,可見我們國(guó)家的計(jì)算機(jī)教育有多死板。

            大二準(zhǔn)備學(xué)VC和BC,當(dāng)時(shí)難以取舍,后來(lái)選了VC,不為別的,只為書店里兩本書,VC那本便宜6塊錢。我的努力在班上無(wú)人能及,學(xué)的日夜不 分,大三有了計(jì)算機(jī)后更是如此,很多次父親半夜教訓(xùn)我說(shuō)我不要命了,我一直覺得自己基礎(chǔ)差,記憶又不行,條件也不好 ,所以覺得只有多花點(diǎn)時(shí)間才能趕上別人。居然后來(lái)有許多朋友說(shuō)我有學(xué)計(jì)算機(jī)的天賦,讓我哭笑不得。我用的是486,16M內(nèi)存,1G硬盤,當(dāng)時(shí)同學(xué)們的配 置都是P166MMX,我安裝一個(gè)Windows NT4.0需要一個(gè)通宵,編譯一個(gè)BC5.0向?qū)傻某绦蛐枰鼉蓚€(gè)小時(shí),我的顯示器是個(gè)二手的,輻射非常大,開機(jī)屏幕冒火花,看起來(lái)很酷的:)。有一 次程序?qū)懙奶茫X得怎么白色的編輯器背景變成了紫色,以為顯示器壞了,后來(lái)才發(fā)現(xiàn)眼睛不行了,不過(guò)說(shuō)來(lái)也奇怪,到今天我的視力還能保持1.5,真是個(gè)奇 跡。但是就是那臺(tái)破機(jī)器陪伴我兩年,讓我學(xué)會(huì)了VC、Delphi、SQL Server等。后來(lái)那臺(tái)機(jī)器給我阿姨打字用,據(jù)她說(shuō)一天她正打的開心,一股青煙夾著火苗從顯示器鉆出來(lái),之后它才壽終正寢。

            大三假期找了個(gè)機(jī)會(huì)在一個(gè)計(jì)算機(jī)研究所實(shí)習(xí),與其說(shuō)實(shí)習(xí)不如說(shuō)是做義工,工作了兩個(gè)月一分錢沒有拿。但是這兩個(gè)月對(duì)我的發(fā)展幫助很大,讓我早一 步了解了社會(huì),剛?cè)サ臅r(shí)候我當(dāng)然是一竅不通,在那里我熟悉了網(wǎng)絡(luò),學(xué)會(huì)了Delphi和Oracle。由于工作很認(rèn)真,得到了比較好的評(píng)價(jià),在一位長(zhǎng)者的 引薦下,我開始和他們一起做項(xiàng)目,這使我在大三大四就有了自己的收入,大四又找了兩家MIS公司兼職,雖然錢不多,但是在學(xué)生期間有1000多的收入我已 經(jīng)非常滿足了,我終于用自己賺的錢把計(jì)算機(jī)換了。

            大四下開始找工作,這時(shí)我的工作經(jīng)驗(yàn)已經(jīng)比較多(當(dāng)然現(xiàn)在想想非常幼稚),開始聽父母的想去那個(gè)研究所,實(shí)習(xí)過(guò)那個(gè)部門也希望我能去,但是不知 道為什么最后不了了之,這種單位就是比較官僚,我一氣之下就到了我兼職的一個(gè)公司做MIS的Team Leader。在大三到畢業(yè)一年的時(shí)間,做過(guò)了各種MIS,從煤氣、煙廠、公安、鐵路、飲食到高校,什么有錢做什么,工作也很辛苦,經(jīng)常加班和熬通宵,從 跟客戶談需求到設(shè)計(jì)、編碼、測(cè)試、交付都要上。那時(shí)覺得很有成就感,覺得自己還不錯(cuò),現(xiàn)在想想真是很膚淺。

            剛走上工作崗位的學(xué)生很容易被誤導(dǎo),各種開發(fā)工具讓人眼花繚亂,同時(shí)也覺得很受公司器重,但這樣工作永遠(yuǎn)是一個(gè)低層次的開發(fā)者。不要跟我說(shuō)什么 系統(tǒng)分析有多么多么重要,多么多么難。你以為自己跟用戶談需求做設(shè)計(jì)就是系統(tǒng)分析和設(shè)計(jì)了嗎,國(guó)內(nèi)又有幾個(gè)公司能夠做的很到位很規(guī)范?我是ISO9000 內(nèi)審員,也在Rational公司受過(guò)多次培訓(xùn),拿了4個(gè)證書,還有一個(gè)公司讓我去做CMM。這些我聽過(guò)很多,但是很多事情到內(nèi)就變了性質(zhì),一個(gè)公司不是 通過(guò)了ISO9000或者CMM就能規(guī)范了,我現(xiàn)在在一家有幾十年歷史的外企工作,里面的管理不是一般國(guó)內(nèi)企業(yè)能及的。作為一個(gè)畢業(yè)不久以前沒有步入過(guò)社 會(huì)的學(xué)生,幾乎不可能在很短的時(shí)間掌握系統(tǒng)分析和設(shè)計(jì),面向?qū)ο蟆ML只是一個(gè)工具,關(guān)鍵是人本身的思想,不是說(shuō)你熟悉了C++ 、Rose就能夠做出好的設(shè)計(jì),相反如果你具備了很高的素質(zhì),你可以用C寫出比別人用C++更加模塊化的程序。

            話說(shuō)遠(yuǎn)一些,國(guó)內(nèi)軟件開發(fā)行業(yè)有一個(gè)怪圈,很多人覺得VC > Delphi > VB,真是很搞笑。這幾個(gè)軟件我都做過(guò)開發(fā),說(shuō)白了他們都是工具,應(yīng)該根據(jù)應(yīng)用的需要選擇采用哪個(gè),而不是覺得哪個(gè)上層次。如果你因?yàn)橛媚硞€(gè)開發(fā)工具很有 面子而選擇的話,只能說(shuō)明你很淺薄。如果說(shuō)層次,那么這些工具都不上層次,因?yàn)樗鼈冇脕?lái)用去都是一些系統(tǒng)的API,微軟的朋友不會(huì)因?yàn)槟阌涀∷麄兌嗌賯€(gè) API或者多少個(gè)類就會(huì)覺得你很了不起,你永遠(yuǎn)只是他們的客戶,他們看重的是你口袋里的銀子。我也做過(guò)系統(tǒng)內(nèi)核,我也封裝過(guò)很多API,同樣我也不會(huì)看重 那些使用這些API做二次開發(fā)的客戶,除非他能夠作出自己獨(dú)到的設(shè)計(jì)。

            至于有人認(rèn)為C++ > C那更是讓人笑掉大牙,不妨你去打聽一下,現(xiàn)在有幾個(gè)操作系統(tǒng)內(nèi)核是用C++寫的,又有幾個(gè)實(shí)時(shí)系統(tǒng)用的是C++,當(dāng)然我也不是說(shuō)C++不好,但是目前的 內(nèi)核和實(shí)時(shí)系統(tǒng)中C++還無(wú)法與C匹敵,至于說(shuō)C++適合做應(yīng)用系統(tǒng)的開發(fā)那是另外一回事。所以我的觀點(diǎn)是不在于你用什么工具和語(yǔ)言,而在于你干什么工 作。你的設(shè)計(jì)體現(xiàn)了你的技術(shù)層次。

            這樣干了一年我覺得非常苦悶,做的大多數(shù)都是熟練工種的活,個(gè)人技術(shù)上沒有太多的提高也看不到方向。所以決定離開這個(gè)城市去上海,尋求更好的發(fā)展,并且打算放棄我以前的MIS轉(zhuǎn)到通信行業(yè)。

            寫到這里不能不提到我女朋友,我們是在來(lái)上海前半年認(rèn)識(shí)的,她大四在我公司實(shí)習(xí),公司派她給我寫文檔,我們的感情發(fā)展的很快。她告訴我很多事 情,她家原本是改革開放的第一批暴發(fā)戶,她母親愛打牌,輸?shù)袅藥装偃f(wàn),還欠了很多債,她有男朋友,但是她對(duì)他沒有感情,只因?yàn)樗o了她母親兩萬(wàn)多塊錢,后 來(lái)還強(qiáng)迫她寫了四萬(wàn)塊的借條,她男朋友背叛過(guò)她并且不止一次打她,現(xiàn)在逼她結(jié)婚,不然就要她還錢。這人居然還是一個(gè)高校的老師!她母親把父親給她的學(xué)費(fèi)花 了,因?yàn)橥锨穼W(xué)費(fèi)她沒有辦法拿到畢業(yè)證。

            她母親現(xiàn)在有病需要錢,我拿出了自己的一點(diǎn)積蓄并且跟朋友們借了一些,替她交了學(xué)費(fèi)并給她母親看病(后來(lái)才知道看病的錢又不知所終,就連她母親 是不是有病我都不知道,但她也是沒有辦法)。這個(gè)時(shí)候我家知道了一些事情,堅(jiān)決反對(duì)我和她在一起,她原來(lái)的男朋友也極力破壞。無(wú)奈之下我們決定早一定離開 這個(gè)傷心的城市,并且瞞著我們家。由于時(shí)間倉(cāng)促,我只準(zhǔn)備了4000塊錢,她僅有的幾百塊錢也被她母親要去了,我買了三張票,一張是中午的,兩張是晚上 的,中午我的家人把我送上船,他們一離開我就下了船,我和她乘坐晚上的船離開了這個(gè)我和她生活了很多年的城市,帶走的只是一身債務(wù)。

            沒有來(lái)過(guò)上海的我們兩個(gè)性倔強(qiáng),都不愿意去麻煩同學(xué)和朋友。來(lái)到上海是傍晚6點(diǎn)半,我們都不知道該去哪里,我們找了一個(gè)20塊錢的旅館,這個(gè)房 間連窗戶都沒有,7月份的天氣酷熱難耐,房間里非常悶熱。第二天我們開始租房子,因?yàn)樯砩系腻X不多,我們基本都是步行,花了一個(gè)星期時(shí)間,不知道在浦東轉(zhuǎn) 了多少圈后找到了一個(gè)400塊的房子,但是我們都 不了解上海是付三壓一,還要付半個(gè)月的中介費(fèi),買了一些鍋碗瓢盆后,我們身上只有800塊錢了。工作都還沒有著落,這800塊錢要支持到我們拿到第一個(gè)月 工資,為了省錢我們自己做飯,每天買菜只花兩塊錢,她非常喜歡吃(也可能她在大學(xué)經(jīng)常挨餓的原因),看到她現(xiàn)在這樣省吃儉用我真的很不忍心。

            她以前的男朋友也沒有放過(guò)她,經(jīng)常打電話來(lái)騷擾,并且來(lái)上海看她,還說(shuō)了不少恐嚇?biāo)脑挘^(guò)于善良,說(shuō)他以前畢竟幫助過(guò)她,叫我不要與他一般 見識(shí)。以后的每天在家就是苦等面試通知,原本我想迅速找一家MIS公司解決眼前的困難,但是她堅(jiān)持讓我不要放棄自己的理想,終于功夫不負(fù)有心人,我找到了 一家通信公司,4000塊的工資雖然趕不上MIS公司給我開出的價(jià)位,但也夠在上海生存。她也找到了工作,第一天上班她哭了,這是她來(lái)上海第一次流淚,我 心里很難受也很感動(dòng)。

            由于是全新的行業(yè),我把自己降到了零點(diǎn),我學(xué)的VC、Delphi、數(shù)據(jù)庫(kù)派不上用場(chǎng),擺在我面前的是嵌入式、協(xié)議、信令一些我從未接觸過(guò)的知 識(shí)。我知道我沒有退路,于是拼命的學(xué)習(xí),我把自己當(dāng)做一個(gè)應(yīng)屆畢業(yè)生一樣,一分努力一分收獲,半年過(guò)去我終于熟悉了工作,并且得到了公司的表彰,薪水也加 了一級(jí)。后面的日子里我們省吃儉用,把欠朋友的1萬(wàn)多塊錢還了,日子終于上了正軌。這時(shí)女朋友告訴我她想考研究生,我也很支持,于是她辭職在家備考。

            另外,在這里我要感謝我的Project Manager,他原來(lái)是一個(gè)大通信公司的產(chǎn)品經(jīng)理,對(duì)人非常和善,我從他那里學(xué)到了很多知識(shí),而且他也給了我許許多多無(wú)私的幫助。在工作上他給我充分的 空間和信任。記得公司安排我維護(hù)一個(gè)接入服務(wù)器軟件,由于代碼量不算太小(5萬(wàn)行),資料和文檔都不齊全,我維護(hù)起來(lái)非常吃力,所以想重新把它做一遍,公 司領(lǐng)導(dǎo)不太支持,可能覺得工作量太大,但是他極力支持我,私下里他讓我放手去做,我的維護(hù)工作他擠時(shí)間做。在他的支持下,我花了半年時(shí)間完成了接入服務(wù)器 的軟件,并且實(shí)現(xiàn)了一個(gè)相對(duì)完整的TCP/IP協(xié)議棧。在這里我學(xué)會(huì)了嵌入式系統(tǒng)設(shè)計(jì)、驅(qū)動(dòng)開發(fā)、TCP/IP和很多通信的知識(shí),我花了一年時(shí)間終于使自 己從MIS開發(fā)轉(zhuǎn)到了通信行業(yè),并且站穩(wěn)了腳跟。我的開發(fā)大量是對(duì)硬件的直接操作,不再受微軟的操作系統(tǒng),VC、Delhpi這些開發(fā)工具的約束,我終于 看到了另外一片天空。

            我做事情喜歡追根問底,隨著開發(fā)的深入,軟件開發(fā)與硬件聯(lián)系越來(lái)越緊密,硬件知識(shí)的匱乏又對(duì)我的發(fā)展產(chǎn)生了障礙,而且芯片技術(shù)基本上掌握在國(guó)外 公司的手里,這對(duì)做系統(tǒng)級(jí)設(shè)計(jì)是一個(gè)非常大的制約,一個(gè)新產(chǎn)品出來(lái),第一道利潤(rùn)(也往往是最豐厚的利潤(rùn))常常都被IC公司如Intel、Motorola 賺去了,國(guó)內(nèi)的廠商只能喝點(diǎn)湯。所以我決心解決自己的硬件技術(shù)障礙,并打算離開通信行業(yè),進(jìn)入IC設(shè)計(jì)相關(guān)領(lǐng)域。

            當(dāng)然我明白如果我對(duì)硬件了解的非常少,沒有哪家IC公司會(huì)仁慈到招我這樣一個(gè)一竅不通的人來(lái)培訓(xùn)。所以我必須努力打好基礎(chǔ),學(xué)一些相關(guān)知識(shí)為以 后做準(zhǔn)備。就像我開始從MIS轉(zhuǎn)到通信一樣,我看過(guò)大量通信方面的書,并且給一個(gè)ISP做過(guò)RADIUS計(jì)費(fèi)分揀臺(tái),在這樣的背景下這家通信公司才給了我 這個(gè)機(jī)會(huì)。我在的通信公司是做系統(tǒng)設(shè)計(jì)的,有不少PCB  Layout硬件人員,平常我就注意向他們學(xué)習(xí),由于我做的是軟件,在公司看硬件資料不好意思,所以開始只好在家看,剛來(lái)上海工作我連續(xù)一年都在加班, 后來(lái)不加了,因?yàn)槲乙獢D出時(shí)間學(xué)習(xí),通常我12點(diǎn)左右睡,第二天5點(diǎn)半起,我上班比較早,地鐵上如果人不多,我也用來(lái)看書。

            學(xué)習(xí)當(dāng)然不會(huì)是一帆風(fēng)順的,有些實(shí)在不懂的問題就積累起來(lái)問硬件人員,他們的幫助使我學(xué)習(xí)進(jìn)度快了很多。因?yàn)樵跊]有人點(diǎn)撥的情況下自學(xué),我的一 半時(shí)間是花在解決疑難問題上,但這種問題經(jīng)常是別人的一句話就可以讓我豁然開朗,我非常慶幸我有這樣的學(xué)習(xí)環(huán)境。在后面的一年里,我學(xué)會(huì)了看硬件原理圖, 學(xué)會(huì)了簡(jiǎn)單的硬件設(shè)計(jì) (模擬電路方面還有不小的差距),事情就是這樣的,當(dāng)你安安份份做軟件,別人永遠(yuǎn)認(rèn)為你是軟件開發(fā)人員,在你開始學(xué)習(xí)硬件時(shí)別人未必會(huì)認(rèn)同,有位中興通訊 的朋友還對(duì)我說(shuō)過(guò),一個(gè)人不可能把所有東西都學(xué)完。

            我也明白這一點(diǎn),但我希望自己做的更好。但當(dāng)你熟悉硬件后大家又會(huì)覺得你好像原本就是軟硬件都懂的,同事們也都習(xí)以為常了。這個(gè)時(shí)候我可以把硬 件資料堂堂正正的拿到公司看,沒有人再大驚小怪了。讓我比較自豪的是我通過(guò)自己的努力做了一個(gè)IAD(軟交換的終端設(shè)備)系統(tǒng)方案,包含軟硬件的選型、設(shè) 計(jì)等內(nèi)容,這個(gè)方案得到了公司和同事們的認(rèn)同,讓我感到非常欣慰。

            技術(shù)是相輔相成的,當(dāng)我的硬件有了一定的進(jìn)步后,我的軟件設(shè)計(jì)也有了很大的提高 ,我可以從更深層次理解問題。我做的接入服務(wù)器CPU是Motorola PowerPC 860,熟悉的朋 友都知道860 QMC與軟件的批量數(shù)據(jù)傳輸通常采用BD表的方式,硬件人員做驅(qū)動(dòng)的時(shí)候習(xí)慣采用固定BD表,每接收或發(fā)送數(shù)據(jù)都將數(shù)據(jù)從BD表拷貝到用戶Buffer, 或從用戶Buffer拷 貝到BD表。由于理解的比較深入,我自己重新實(shí)現(xiàn)了這個(gè)過(guò)程,采用動(dòng)態(tài)BD表的方式,驅(qū)動(dòng)從一個(gè)網(wǎng)口接收數(shù)據(jù),提交給我的軟件進(jìn)行三層交換,直至從另外的 接口發(fā)送出去,沒有進(jìn)行一次拷貝。這樣的設(shè)計(jì)大大提高了性能,使系統(tǒng)的指標(biāo)接近理論值。

            軟硬件的結(jié)合使我的設(shè)計(jì)水平上了一個(gè)臺(tái)階。我現(xiàn)在寫的這個(gè)操作系統(tǒng),編譯后我把程序反編譯成匯編,找出其中不優(yōu)化的代碼,然后在C程序中進(jìn)行調(diào) 整。舉個(gè)例子,很多CPU沒有專門的乘法指令,這個(gè)大家應(yīng)該都知道,在這種CPU上進(jìn)行一個(gè)乘法操作常常會(huì)花費(fèi)大量的指令周期,有的朋友會(huì)說(shuō)這個(gè)我知道。 我會(huì)盡量避免采用×號(hào),但是事情往往不是那么簡(jiǎn)單,你知道C語(yǔ)言中數(shù)組的下標(biāo)操作是怎么實(shí)現(xiàn)的嗎?仔細(xì)看看反匯編的代碼你就會(huì)明白,同樣是通過(guò)下標(biāo)的定位 操作,C編譯器會(huì)有時(shí)候會(huì)產(chǎn)生位移指令,但有時(shí)候會(huì)用乘法實(shí)現(xiàn),兩者效率往往是天壤之別,所以明白這些問題你才能將系統(tǒng)性能提升到極致。這些問題就不多說(shuō) 了,有興趣的話以后可以共同探討。

            話說(shuō)遠(yuǎn)一點(diǎn),我由衷的希望在軟件上做的比較深入的朋友們有機(jī)會(huì)學(xué)學(xué)硬件以及其它相關(guān)知識(shí),尤其是做底層開發(fā)和嵌入式設(shè)計(jì)的。這對(duì)軟件技術(shù)的提高 有非常大的幫助,否則很多事情你只知道該這樣但不會(huì)明白為什么該這樣。我這個(gè)觀點(diǎn)在我現(xiàn)在的IC公司Project Manager那里也得到了驗(yàn)證。他告訴我們公司現(xiàn)在802.11芯片產(chǎn)品的軟件經(jīng)理原本是做該芯片硬件設(shè)計(jì)的,某某某原本是做軟件的,現(xiàn)在在做IC,類 似的例子還有很多,只是在國(guó)內(nèi)這樣的風(fēng)氣不是非常流行。

            我有一些心得體會(huì)與大家分享,只有當(dāng)我干好本職工作后,我才會(huì)學(xué)習(xí)與工作關(guān)系不大的技術(shù),這樣公司的上司才不至于反感。在入門 階段的問題我通常不去問那些資深人士 ,而是問一些資歷比較淺的朋友,比如剛畢業(yè)不久的學(xué)生,因?yàn)樗麄兺鶗?huì)跟你詳細(xì)的講解,而資深人士通常覺得你的問題太簡(jiǎn)單,所以回答的也很簡(jiǎn)單,我又不好 意思多問。

            等技術(shù)上了一定的層次后我才會(huì)問他們,他們也能給你比較深入的回答。另外,有些朋友說(shuō)我機(jī)會(huì)比較好,他們也希望能從事新的工作可惜沒有機(jī)會(huì),我 聽了只有苦笑,我的機(jī)會(huì)了 解的人都應(yīng)該知道,我沒有出生在什么IT世家:)也沒有誰(shuí)一路提拔我,所有的路都是自己走出來(lái)的,我母親去世比較早,我的后母(我叫她阿姨)看著我努力過(guò) 來(lái)的,一次她看我大年30還在寫程序,她說(shuō)像我這樣努力木頭都能學(xué)出來(lái)。

            我的最終目的是IC而不是PCB,所以我下一步的準(zhǔn)備開始學(xué)習(xí)IC設(shè)計(jì)的知識(shí)。公司的同事沒有懂IC設(shè)計(jì)的,后面的路又要靠自己了。我買了不少 相關(guān)的書,在網(wǎng)上也查了很多的資料,我花了大量的時(shí)間去學(xué)習(xí)VHDL,并且用軟件進(jìn)行了一些簡(jiǎn)單的設(shè)計(jì)和仿真(沒有設(shè) 計(jì)ASIC,只是針對(duì)FPGA)。隨著學(xué)習(xí)的深入,我漸漸明白了IC設(shè)計(jì)的基本流程,同時(shí)也明白了這條路的艱辛。這個(gè)時(shí)候我已經(jīng)做好了跳槽的準(zhǔn)備,我向一 家業(yè)界又一定知名度的IC設(shè)計(jì)公司投了簡(jiǎn)歷,并通過(guò)了漫長(zhǎng)的面試(4個(gè)多小時(shí))。其他的一切我都比較滿意,唯獨(dú)薪資差強(qiáng)人意,我也明白原因,因?yàn)槲沂沁@個(gè) 行業(yè)的新人,我沒有經(jīng)驗(yàn),我再一次將自清零了。公司老板問我6000多一個(gè)月能不能接受,我知道他也是照章辦事。想想我通信行業(yè)的朋友們,基本上都是年薪 10萬(wàn)以上,月薪過(guò)萬(wàn)的也比比皆是,朋友們也幫我介紹了不 少待遇不錯(cuò)的公司。我該怎么選擇,當(dāng)時(shí)我很猶豫,我熱愛我的事業(yè),我向往我的追求,但我也是一個(gè)普通的人,我也需要養(yǎng)家糊口,我也想早一點(diǎn)買房買車。生活 給我出了一道難題。

            愛因斯坦在63歲時(shí)說(shuō)過(guò)一個(gè)人沒有在30歲以前達(dá)成科學(xué)上的最大成就,那他永遠(yuǎn)也不會(huì)有。這句話給了我很大 的壓力和震動(dòng),我馬上就26歲了,離30只有四年時(shí)間,我必須抓緊這幾年寶貴的時(shí)間,努力達(dá)到我技術(shù)上的最高峰。為了這個(gè)理想,為了能離自己的夢(mèng)更近一 些,我選擇了這家IC公司,我明白自己的薪資和公司剛進(jìn)來(lái)的碩士研究生相差無(wú)幾,但為了今后的發(fā)展只能忍受,一切又得重新開始。換行業(yè)是一個(gè)非常痛苦的過(guò) 程,尤其從一個(gè)春風(fēng)得意的位置換到一個(gè)陌生的崗位,感覺象從溫暖的被子里鉆出來(lái)跳進(jìn)冰水中,讓人難以接受。在原來(lái)那家通信公司,我是唯一兩年時(shí)間漲了五次 工資的員工,公司和同事都給了我極大的認(rèn)可,工作上也常常被委以重任。但現(xiàn)在這一切都成了過(guò)去,在新的公司 我只是一個(gè)新人,沒有人知道也沒有人在意我過(guò)去的成績(jī)。我決定重新開始,我把自己看作 新畢業(yè)的學(xué)生,我要用自己的努力得到公司的認(rèn)可。進(jìn)入新的行業(yè)是非常痛苦的,我告訴自己必須忍受這一切,雖然外面有很多誘惑,但是既然作出了選擇我就不允 許自己輕易放棄。

            我現(xiàn)在已經(jīng)在這家新公司上了一個(gè)多月的班,開始非常艱難,現(xiàn)在慢慢適應(yīng)了。第一個(gè)月結(jié)束時(shí),Team Leader找我談話,說(shuō)我是新進(jìn)員工中最優(yōu)秀的一個(gè),我心里很欣慰,這也算對(duì)我努力的一個(gè)肯定吧。在這里還要感謝我的女朋友,她給了我很大的支持和鼓 舞, 每次在我動(dòng)搖的時(shí)候她都在鼓勵(lì)我,讓我堅(jiān)持自己的理想,剛來(lái)上海是她讓我不要勉強(qiáng)去做MIS,這次也是她讓我頂住了月薪過(guò)萬(wàn)的誘惑,沒有她我可能不會(huì)有今 天的成績(jī)。現(xiàn)在的公司有自己的操作系統(tǒng),自己的CPU、DSP和其它芯片,在這里我能學(xué)到世界上最先進(jìn)的技術(shù),我們的設(shè)計(jì)開發(fā)不再完全依賴別人的硬件和系 統(tǒng),這讓我很開心。我打算等工作步入正軌后,全力學(xué)習(xí)新的知識(shí),實(shí)現(xiàn)我的理想。
            在后面的兩年里我給自己定下了幾個(gè)目標(biāo):

            1、努力做好本職工作,在工作上得到公司和同事們的認(rèn)同;
            2、努力學(xué)習(xí)IC硬件設(shè)計(jì)知識(shí),多向同事請(qǐng)教,并利用一切機(jī)會(huì)多實(shí)踐;
            3、實(shí)現(xiàn)我的實(shí)時(shí)操作系統(tǒng)的主要部分,完成TCP/IP協(xié)議棧模塊,并免費(fèi)發(fā)布源代碼;
            4、和我女朋友結(jié)婚并買一套小房子,這是最重要的,因?yàn)槲颐靼资聵I(yè)是可以重來(lái)的,但是珍貴的感情很難失而復(fù)得。

            在這里提一下我現(xiàn)在開發(fā)的操作系統(tǒng),它是一個(gè)實(shí)時(shí)嵌入式系統(tǒng),目前支持以下特性:

            a. 支持時(shí)間片輪轉(zhuǎn)調(diào)度和基于優(yōu)先級(jí)調(diào)度,最多64個(gè)優(yōu)先級(jí);
            b. 搶占式實(shí)時(shí)內(nèi)核;
            c. 為了便于移植,主體用標(biāo)準(zhǔn)C實(shí)現(xiàn);
            d. 匯編代碼非常少,不到100行;
            e. 支持任務(wù)管理,各任務(wù)有獨(dú)立的堆棧;
            f. 進(jìn)程同步和通信目前完成了Semaphore,Message Queue正在調(diào)試;
            g. 實(shí)現(xiàn)了定時(shí)系統(tǒng)調(diào)用;
            h. 可以在Windows上仿真調(diào)試。

            我還打算下一步實(shí)現(xiàn)優(yōu)先級(jí)反轉(zhuǎn)保護(hù),Event Flag,Data Pipe,內(nèi)存管理(以前實(shí)現(xiàn)過(guò)) ,驅(qū)動(dòng)接口等。在這之后我還會(huì)努力完善它,比如加入文件系統(tǒng),協(xié)議棧、調(diào)試接口等。希望朋友們提出自己的意見和建議,在此不勝感激!
            后記:

            就像有的朋友說(shuō)的,我的經(jīng)歷或許會(huì)給一些朋友產(chǎn)生誤導(dǎo),在這里我必須說(shuō)明一下。我來(lái)上海以前學(xué)習(xí)過(guò)于拼命,常常晚上只睡3個(gè)多小時(shí),我身高1米 71,那時(shí)只有108斤(我現(xiàn)在130多),家人也說(shuō)我這樣拼命活不過(guò)60歲,但是當(dāng)時(shí)的我太固執(zhí),我對(duì)他們說(shuō)只要能實(shí)現(xiàn)理想活50歲我就夠了。那時(shí)的拼 命使我的身體受到了影響,有一次早上突然腰肌劇痛難忍,痛的我倒在床上站不起來(lái)。雖然我現(xiàn)在已經(jīng)比較注意,但有時(shí)候還會(huì)隱隱作痛。后來(lái)在女朋友說(shuō)服了我, 來(lái)上海以后我不再如此。我經(jīng)常引用父親的一句話身體是革命的本錢。

            而且我也發(fā)現(xiàn)拼命不是辦法,我可以熬一兩個(gè)通宵,最多的一次我連續(xù)工作了三天三夜, 但是我半個(gè)月都沒有恢復(fù)過(guò)來(lái),這樣是不是得不償失?學(xué)習(xí)工作應(yīng)該是一個(gè)長(zhǎng)期的過(guò)程, 像馬拉松而不是百米沖刺。我現(xiàn)在非常注意調(diào)整學(xué)習(xí)和工作的強(qiáng)度,我要保證每天盡量有相對(duì)充沛的精力,一些年輕的朋友覺得自己也應(yīng)該拼命努力,這讓我多少有 些擔(dān)心,如果我的故事能讓你在學(xué)習(xí)工作上多一點(diǎn)興趣,我會(huì)感到很開心,但如果誤導(dǎo)了某些朋友,讓你做一些不值得的付出,我會(huì)感到很內(nèi)疚。

            技術(shù)沒有貴賤之分,我以前換行業(yè)是因?yàn)樽约旱呐d趣所致,而不是對(duì)哪個(gè)行業(yè)有什么偏見。我希望我的經(jīng)歷不要給朋友一個(gè)錯(cuò)誤的導(dǎo)向,覺得我始終向更 高的技術(shù)發(fā)展。其實(shí)各行各業(yè)做到頂尖都是很困難的。話又說(shuō)回來(lái)雖然技術(shù)沒有貴賤,但是門檻是有高低的,無(wú)論如何,做IC的門檻要比做網(wǎng)頁(yè)的高,這一點(diǎn)無(wú)可 否認(rèn)。國(guó)家各種人才都是需要的,但是作為個(gè)人奮發(fā)向上的想法還是應(yīng)該有的,努力在自己喜歡的行業(yè)上做的更好,而不應(yīng)該停留在比較膚淺的層次上。

            我是一個(gè)自己覺得比較有自知之明的人,或許我最大的優(yōu)點(diǎn)就是知道自己有很多缺點(diǎn) :)。我的故事中很多的曲折和錯(cuò)誤都是由我的缺點(diǎn)造成的,希望大家用審慎的眼光看待我的經(jīng)歷,不要被我的花言巧語(yǔ)所迷惑。我學(xué)習(xí)有些隨心所欲,這給我?guī)?lái) 了無(wú)盡的麻煩,也大大阻礙了我的發(fā)展。記得我小時(shí)候成績(jī)比較出色,但是后來(lái)學(xué)習(xí)嚴(yán)重偏科,導(dǎo)致我中學(xué)成績(jī)一再滑坡,也沒有考上什么好的學(xué)校,小時(shí)候的一個(gè) 朋友,當(dāng)時(shí)的成績(jī)和我相仿,但是沒有我這個(gè)缺點(diǎn),她上了清華,后來(lái)在去了美國(guó)深造,在一個(gè)著名導(dǎo)師手下研究理論科學(xué),這未嘗不是一條更好的出路。

            另外我的學(xué)習(xí)方法也是在不斷改善中的,過(guò)去的學(xué)習(xí)過(guò)于講究數(shù)量和時(shí)間,那樣學(xué)習(xí)既苦而已效率不高。現(xiàn)在我非常注意學(xué)習(xí)的效率和技巧,這樣才是學(xué) 習(xí)的捷徑(當(dāng)然不是指投機(jī)取巧),比如說(shuō)學(xué)一相對(duì)陌生的技術(shù),如果有條件,不妨問一問有經(jīng)驗(yàn)的人,不需要問很多,往往他不經(jīng)意的幾句話會(huì)給你非常大的幫 助,甚至超過(guò)你看一個(gè)星期的書。帶著這樣的思想再去學(xué)習(xí)你會(huì)節(jié)省很多時(shí)間,這樣何樂不為呢?

            這些年中我學(xué)了不少的東西,由于開始非常盲目,所以學(xué)的東西雜亂無(wú)章,現(xiàn)在回想起來(lái)讓我啼笑皆非,我把大量的時(shí)間浪費(fèi)在一些沒有必要深入了解的 知識(shí)上,畢竟一個(gè)人的精力是有限度的。很多朋友和我一樣都背過(guò)五筆字形,的確它是個(gè)不錯(cuò)的輸入法,但是對(duì)一個(gè)研發(fā)人員它絕對(duì)不值得你去背,你的時(shí)間應(yīng)該花 在有價(jià)值的地方。我這樣的事情還做過(guò)很多,我背過(guò)CCED、WPS的命令和快捷鍵,在dBase基本退出歷史舞臺(tái)后我還花了很多時(shí)間去學(xué)習(xí)它的使用。所以 我的學(xué)習(xí)在前期缺乏規(guī)劃,沒有明確的短期目的、中期目標(biāo),只有一個(gè)虛無(wú)飄渺的長(zhǎng)期的理想。這就像做設(shè)計(jì)一樣,好的設(shè)計(jì)是從需求抽象到代碼有很多過(guò)程,而不 能得到了需求就立刻開始開始編碼。

            當(dāng)然這么些年的學(xué)習(xí)和工作多多少少有些收獲,下面我說(shuō)說(shuō)我的一些學(xué)習(xí)的心得,這些方法未必正確,我也在不斷探索和改進(jìn)中。我的學(xué)習(xí)和工作有相對(duì) 明確的目標(biāo),我不會(huì)一時(shí)心動(dòng)而去學(xué)習(xí)某一技術(shù),在下決定之前我會(huì)考慮很多,包括長(zhǎng)期的發(fā)展,個(gè)人路線的規(guī)劃,需要付出的代價(jià)、可能遇到的困難及解決的辦法 等等;在決定后還會(huì)制定更加明確的計(jì)劃,包括短期、中期和長(zhǎng)期的,身邊可以利用到的資源(包括好的書籍、資料、軟硬件環(huán)境,也包括有經(jīng)驗(yàn)的朋友或者師 長(zhǎng)),以及每一個(gè)階段是怎么過(guò)渡到高一階段的計(jì)劃 ;往往在一個(gè)學(xué)習(xí)階段一旦上路后會(huì)走的相對(duì)順利,但是跨階段通常比較麻煩,比如從學(xué)習(xí)基礎(chǔ)知識(shí)轉(zhuǎn)到實(shí)踐。另外我買書也有自己的方法,現(xiàn)在世面上高質(zhì)量的書 遠(yuǎn)不如低質(zhì)量書多,對(duì)于一個(gè)陌生的技術(shù),往往在第一次買書會(huì)選擇錯(cuò)誤,即使買到一本好書但是它的方向也未必適合你,所以我通常會(huì)先在網(wǎng)上查找一些該技術(shù)的 介紹,有了一點(diǎn)點(diǎn)概念后再去買一本比較薄、相對(duì)便宜并且內(nèi)容相對(duì)泛泛而談的書,這是國(guó)內(nèi)作者最善于寫的書:) ,再把它瀏覽一遍后我就會(huì)基本明白這門技術(shù)的要點(diǎn),后面買書和制定計(jì)劃就會(huì)明確的多 。否則一開始就想找本好書往往比較困難,而且買回來(lái)后努力學(xué)習(xí),有時(shí)候?qū)W了一半才發(fā)現(xiàn)是本低質(zhì)量的書或者是相對(duì)過(guò)時(shí)技術(shù),讓人非常懊惱。另外讓有經(jīng)驗(yàn)的人 幫你介紹,通常也是一個(gè)不錯(cuò)的選擇。

          posted @ 2014-05-07 14:22 ZT文萃 閱讀(241) | 評(píng)論 (0)編輯 收藏

          下文轉(zhuǎn)載自:
          http://www.sbanzu.com/topicdisplay.asp?BoardID=8&Page=1&TopicID=4136822
          轉(zhuǎn)載不代表贊同作者,僅僅是記錄。

          有一個(gè)名字,全世界所有的獨(dú)裁者聽到都會(huì)驚慌。
          有一個(gè)名字,一切熱愛自由的人民聽到都要贊揚(yáng)。
          有一個(gè)名字,躲在陰暗中謀殺百姓的歹徒對(duì)她咬牙切齒。
          有一個(gè)名字,陽(yáng)光下渴望和平的人們對(duì)她寄予厚望。
          是她一次又一次的把世界從惡魔手中拯救,
          是她一次又一次的給予恐懼中的人類希望。
          是誰(shuí)擋住了納粹的鐵蹄?
          是誰(shuí)支援了遠(yuǎn)東的戰(zhàn)場(chǎng)?
          是誰(shuí)把集中營(yíng)解放?
          是誰(shuí)迫使日寇投降?
          是誰(shuí)將那隔開同胞的高墻推倒?
          是誰(shuí)擊斃了伊阿獨(dú)裁流氓?
          她高舉著火炬,在黑暗中指引我們方向!
          她宣言的真理,時(shí)時(shí)回響在我們耳旁!
          虛偽者越是污蔑她虛偽,
          正直者越是堅(jiān)定對(duì)她的信仰!
          她的偉大我們一刻不忘!
          你問我她長(zhǎng)的什么模樣?
          她是炙熱通紅的火焰,
          她是寬廣蔚藍(lán)的大海,
          她是純潔耀眼的白光!
          你問我她的名?
          正告你!
          美利堅(jiān)!
          人類的希望!
          壯哉,我大美利堅(jiān)!

          posted @ 2014-05-06 12:02 ZT文萃 閱讀(345) | 評(píng)論 (0)編輯 收藏

          下文轉(zhuǎn)帖自:
          http://www.cnblogs.com/chenssy/p/3651218.html
          版權(quán)歸作者所有。

          hashCode的作用

                要想了解一個(gè)方法的內(nèi)在原理,我們首先需要明白它是干什么的,也就是這個(gè)方法的作用。在講解數(shù)組時(shí)(java提高篇(十八)------數(shù)組),我們提到數(shù)組是java中效率最高的數(shù)據(jù)結(jié)構(gòu),但是“最高”是有前提的。第一我們需要知道所查詢數(shù)據(jù)的所在位置。第二:如果我們進(jìn)行迭代查找時(shí),數(shù)據(jù)量一定要小,對(duì)于大數(shù)據(jù)量而言一般推薦集合。

                在Java集合中有兩類,一類是List,一類是Set他們之間的區(qū)別就在于List集合中的元素師有序的,且可以重復(fù),而Set集合中元素是無(wú)序不可重 復(fù)的。對(duì)于List好處理,但是對(duì)于Set而言我們要如何來(lái)保證元素不重復(fù)呢?通過(guò)迭代來(lái)equals()是否相等。數(shù)據(jù)量小還可以接受,當(dāng)我們的數(shù)據(jù)量 大的時(shí)候效率可想而知(當(dāng)然我們可以利用算法進(jìn)行優(yōu)化)。比如我們向HashSet插入1000數(shù)據(jù),難道我們真的要迭代1000次,調(diào)用1000次 equals()方法嗎?hashCode提供了解決方案。怎么實(shí)現(xiàn)?我們先看hashCode的源碼(Object)。

          public native int hashCode();

                它是一個(gè)本地方法,它的實(shí)現(xiàn)與本地機(jī)器有關(guān),這里我們暫且認(rèn)為他返回的是對(duì)象存儲(chǔ)的物理位置(實(shí)際上不是,這里寫是便于理解)。當(dāng)我們向一個(gè)集合中添加某 個(gè)元素,集合會(huì)首先調(diào)用hashCode方法,這樣就可以直接定位它所存儲(chǔ)的位置,若該處沒有其他元素,則直接保存。若該處已經(jīng)有元素存在,就調(diào)用 equals方法來(lái)匹配這兩個(gè)元素是否相同,相同則不存,不同則散列到其他位置(具體情況請(qǐng)參考(Java提高篇()-----HashMap))。這樣 處理,當(dāng)我們存入大量元素時(shí)就可以大大減少調(diào)用equals()方法的次數(shù),極大地提高了效率。

                所以hashCode在上面扮演的角色為尋域(尋 找某個(gè)對(duì)象在集合中區(qū)域位置)。hashCode可以將集合分成若干個(gè)區(qū)域,每個(gè)對(duì)象都可以計(jì)算出他們的hash碼,可以將hash碼分組,每個(gè)分組對(duì)應(yīng) 著某個(gè)存儲(chǔ)區(qū)域,根據(jù)一個(gè)對(duì)象的hash碼就可以確定該對(duì)象所存儲(chǔ)區(qū)域,這樣就大大減少查詢匹配元素的數(shù)量,提高了查詢效率。

          hashCode對(duì)于一個(gè)對(duì)象的重要性

                hashCode重要么?不重要,對(duì)于List集合、數(shù)組而言,他就是一個(gè)累贅,但是對(duì)于HashMap、HashSet、HashTable而言,它變 得異常重要。所以在使用HashMap、HashSet、HashTable時(shí)一定要注意hashCode。對(duì)于一個(gè)對(duì)象而言,其hashCode過(guò)程就 是一個(gè)簡(jiǎn)單的Hash算法的實(shí)現(xiàn),其實(shí)現(xiàn)過(guò)程對(duì)你實(shí)現(xiàn)對(duì)象的存取過(guò)程起到非常重要的作用。

                在前面LZ提到了HashMap和HashTable兩種數(shù)據(jù)結(jié)構(gòu),雖然他們存在若干個(gè)區(qū)別,但是他們的實(shí)現(xiàn)原理是相同的,這里我以HashTable為例闡述hashCode對(duì)于一個(gè)對(duì)象的重要性。

                一個(gè)對(duì)象勢(shì)必會(huì)存在若干個(gè)屬性,如何選擇屬性來(lái)進(jìn)行散列考驗(yàn)著一個(gè)人的設(shè)計(jì)能力。如果我們將所有屬性進(jìn)行散列,這必定會(huì)是一個(gè)糟糕的設(shè)計(jì),因?yàn)閷?duì)象的 hashCode方法無(wú)時(shí)無(wú)刻不是在被調(diào)用,如果太多的屬性參與散列,那么需要的操作數(shù)時(shí)間將會(huì)大大增加,這將嚴(yán)重影響程序的性能。但是如果較少屬相參與 散列,散列的多樣性會(huì)削弱,會(huì)產(chǎn)生大量的散列“沖突”,除了不能夠很好的利用空間外,在某種程度也會(huì)影響對(duì)象的查詢效率。其實(shí)這兩者是一個(gè)矛盾體,散列的 多樣性會(huì)帶來(lái)性能的降低。

                那么如何對(duì)對(duì)象的hashCode進(jìn)行設(shè)計(jì),LZ也沒有經(jīng)驗(yàn)。從網(wǎng)上查到了這樣一種解決方案:設(shè)置一個(gè)緩存標(biāo)識(shí)來(lái)緩存當(dāng)前的散列碼,只有當(dāng)參與散列的對(duì)象改變時(shí)才會(huì)重新計(jì)算,否則調(diào)用緩存的hashCode,這樣就可以從很大程度上提高性能。

                在HashTable計(jì)算某個(gè)對(duì)象在table[]數(shù)組中的索引位置,其代碼如下:

          int index = (hash & 0x7FFFFFFF) % tab.length;

                為什么要&0x7FFFFFFF?因?yàn)槟承?duì)象的hashCode可能會(huì)為負(fù)值,與0x7FFFFFFF進(jìn)行與運(yùn)算可以確保index為一個(gè)正 數(shù)。通過(guò)這步我可以直接定位某個(gè)對(duì)象的位置,所以從理論上來(lái)說(shuō)我們是完全可以利用hashCode直接定位對(duì)象的散列表中的位置,但是為什么會(huì)存在一個(gè) key-value的鍵值對(duì),利用key的hashCode來(lái)存入數(shù)據(jù)而不是直接存放value呢?這就關(guān)系HashTable性能問題的最重要的問 題:Hash沖突!

                我們知道沖突的產(chǎn)生是由于不同的對(duì)象產(chǎn)生了相同的散列碼,假如我們?cè)O(shè)計(jì)對(duì)象的散列碼可以確保99.999999999%的不重復(fù),但是有一種絕對(duì)且?guī)缀醪?可能遇到的沖突你是絕對(duì)避免不了的。我們知道hashcode返回的是int,它的值只可能在int范圍內(nèi)。如果我們存放的數(shù)據(jù)超過(guò)了int的范圍呢?這 樣就必定會(huì)產(chǎn)生兩個(gè)相同的index,這時(shí)在index位置處會(huì)存儲(chǔ)兩個(gè)對(duì)象,我們就可以利用key本身來(lái)進(jìn)行判斷。所以具有相索引的對(duì)象,在該 index位置處存在多個(gè)對(duì)象,我們必須依靠key的hashCode和key本身來(lái)進(jìn)行區(qū)分。

          hashCode與equals

                在Java中hashCode的實(shí)現(xiàn)總是伴隨著equals,他們是緊密配合的,你要是自己設(shè)計(jì)了其中一個(gè),就要設(shè)計(jì)另外一個(gè)。當(dāng)然在多數(shù)情況下,這兩個(gè) 方法是不用我們考慮的,直接使用默認(rèn)方法就可以幫助我們解決很多問題。但是在有些情況,我們必須要自己動(dòng)手來(lái)實(shí)現(xiàn)它,才能確保程序更好的運(yùn)作。

                對(duì)于equals,我們必須遵循如下規(guī)則:

                對(duì)稱性:如果x.equals(y)返回是“true”,那么y.equals(x)也應(yīng)該返回是“true”。

                反射性:x.equals(x)必須返回是“true”。

                類推性:如果x.equals(y)返回是“true”,而且y.equals(z)返回是“true”,那么z.equals(x)也應(yīng)該返回是“true”。

                一致性:如果x.equals(y)返回是“true”,只要x和y內(nèi)容一直不變,不管你重復(fù)x.equals(y)多少次,返回都是“true”。

                任何情況下,x.equals(null),永遠(yuǎn)返回是“false”;x.equals(和x不同類型的對(duì)象)永遠(yuǎn)返回是“false”。

                對(duì)于hashCode,我們應(yīng)該遵循如下規(guī)則:

                1. 在一個(gè)應(yīng)用程序執(zhí)行期間,如果一個(gè)對(duì)象的equals方法做比較所用到的信息沒有被修改的話,則對(duì)該對(duì)象調(diào)用hashCode方法多次,它必須始終如一地返回同一個(gè)整數(shù)。

                2. 如果兩個(gè)對(duì)象根據(jù)equals(Object o)方法是相等的,則調(diào)用這兩個(gè)對(duì)象中任一對(duì)象的hashCode方法必須產(chǎn)生相同的整數(shù)結(jié)果。

                3. 如果兩個(gè)對(duì)象根據(jù)equals(Object o)方法是不相等的,則調(diào)用這兩個(gè)對(duì)象中任一個(gè)對(duì)象的hashCode方法,不要求產(chǎn)生不同的整數(shù)結(jié)果。但如果能不同,則可能提高散列表的性能。

                至于兩者之間的關(guān)聯(lián)關(guān)系,我們只需要記住如下即可:

                如果x.equals(y)返回“true”,那么x和y的hashCode()必須相等。

                如果x.equals(y)返回“false”,那么x和y的hashCode()有可能相等,也有可能不等。

                理清了上面的關(guān)系我們就知道他們兩者是如何配合起來(lái)工作的。先看下圖:

          2014040701_thumb2

                整個(gè)處理流程是:

                1、判斷兩個(gè)對(duì)象的hashcode是否相等,若不等,則認(rèn)為兩個(gè)對(duì)象不等,完畢,若相等,則比較equals。

                2、若兩個(gè)對(duì)象的equals不等,則可以認(rèn)為兩個(gè)對(duì)象不等,否則認(rèn)為他們相等。

                實(shí)例:

          復(fù)制代碼
          public class Person {     private int age;     private int sex;    //0:男,1:女     private String name;      private final int PRIME = 37;      Person(int age ,int sex ,String name){         this.age = age;         this.sex = sex;         this.name = name;     }      /** 省略getter、setter方法 **/      @Override     public int hashCode() {         System.out.println("調(diào)用hashCode方法...........");          int hashResult = 1;         hashResult = (hashResult + Integer.valueOf(age).hashCode() + Integer.valueOf(sex).hashCode()) * PRIME;         hashResult = PRIME * hashResult + ((name == null) ? 0 : name.hashCode());          System.out.println("name:"+name +" hashCode:" + hashResult);          return hashResult;     }      /**      * 重寫hashCode()      */     public boolean equals(Object obj) {         System.out.println("調(diào)用equals方法...........");          if(obj == null){             return false;         }         if(obj.getClass() != this.getClass()){             return false;         }         if(this == obj){             return true;         }          Person person = (Person) obj;          if(getAge() != person.getAge() || getSex()!= person.getSex()){             return false;         }          if(getName() != null){             if(!getName().equals(person.getName())){                 return false;             }         }         else if(person != null){             return false;         }         return true;     } }
          復(fù)制代碼

                該Bean為一個(gè)標(biāo)準(zhǔn)的Java Bean,重新實(shí)現(xiàn)了hashCode方法和equals方法。

          復(fù)制代碼
          public class Main extends JPanel {      public static void main(String[] args) {         Set<Person> set = new HashSet<Person>();          Person p1 = new Person(11, 1, "張三");         Person p2 = new Person(12, 1, "李四");         Person p3 = new Person(11, 1, "張三");         Person p4 = new Person(11, 1, "李四");          //只驗(yàn)證p1、p3         System.out.println("p1 == p3? :" + (p1 == p3));         System.out.println("p1.equals(p3)?:"+p1.equals(p3));         System.out.println("-----------------------分割線--------------------------");         set.add(p1);         set.add(p2);         set.add(p3);         set.add(p4);         System.out.println("set.size()="+set.size());     } }
          復(fù)制代碼

                 運(yùn)行結(jié)果如下:

          2014040702_thumb

                從上圖可以看出,程序調(diào)用四次hashCode方法,一次equals方法,其set的長(zhǎng)度只有3。add方法運(yùn)行流程完全符合他們兩者之間的處理流程。

          posted @ 2014-05-04 06:23 ZT文萃 閱讀(278) | 評(píng)論 (0)編輯 收藏

          下文來(lái)自:
          http://www.cnblogs.com/chenssy/archive/2012/12/09/2809874.html
          版權(quán)歸作者所有。

                電子郵件用于網(wǎng)上的信心傳遞和交流,它是最重要的Internet服務(wù)之一。據(jù)統(tǒng)計(jì)Internet30%的業(yè)務(wù)是電子郵件有關(guān)的。同時(shí)我們也不可否認(rèn)它在我們的日常生活、工作辦公方面扮演著很重要的角色。譬如:許多辦公自動(dòng)化項(xiàng)目(OA)中都要附帶發(fā)送郵件的功能,如果還要使用OutLook等手工方式就不適合,在這個(gè)高速的時(shí)代,我們需要提供工作效率,讓工作能夠自動(dòng)化。同時(shí)在許多網(wǎng)站中也都需要附帶發(fā)送郵件的功能:給新注冊(cè)的用戶發(fā)送一封包含其注冊(cè)信息的歡迎E-Mail、將網(wǎng)站的最新活動(dòng)信息通過(guò)E-Mail發(fā)送給所有的注冊(cè)會(huì)員等等。

           

                 在開始電子郵件開發(fā)前:我們需要明白一下幾個(gè)概念:電子郵件系統(tǒng)、郵件服務(wù)器、電子郵件、郵件客戶端軟件、郵件傳輸協(xié)議、電子郵件的傳輸過(guò)程。

           

                 電子郵件系統(tǒng)

                 與 傳統(tǒng)的郵政服務(wù)相類似,電子郵件系統(tǒng)由電子郵局、電子郵件發(fā)送、接收系統(tǒng)組成。發(fā)送者和接收者通過(guò)電子郵件發(fā)送、接收系統(tǒng)來(lái)發(fā)送和接收電子郵件,他們實(shí)際 上是運(yùn)行在計(jì)算機(jī)上的郵件客戶端程序。電子郵局起著一個(gè)橋梁的作用,它實(shí)際上是運(yùn)行在服務(wù)器上的郵件服務(wù)器程序。電子郵件的處理流程也和郵政服務(wù)相類似。

           

                    

                 郵件服務(wù)器

                 郵件服務(wù)器是一種用來(lái)負(fù)責(zé)電子郵件收發(fā)管理的設(shè)備。在Internet上提供了大量的電子郵件服務(wù)器,如:126163hotmail…

                 電子郵件服務(wù)器主要提供的功能:

                     1、  接收用戶投遞的郵件。

                     2、  將用戶投遞進(jìn)來(lái)的郵件轉(zhuǎn)發(fā)給目標(biāo)郵件服務(wù)器。

                     3、  接收其他電子郵件服務(wù)器轉(zhuǎn)發(fā)來(lái)的郵件并該郵件存儲(chǔ)到其管理的用戶郵中。

                     4、  為前來(lái)讀取郵件的用戶提供讀取郵件的服務(wù)。

                 郵 件服務(wù)器構(gòu)成了電子郵件系統(tǒng)的核心。每個(gè)收信人都有一個(gè)位于某個(gè)郵件服務(wù)器上的郵箱(mailbox)。Bob的郵箱用于管理和維護(hù)已經(jīng)發(fā)送給他的郵件消 息。一個(gè)郵件消息的典型旅程是從發(fā)信人的用戶代理開始,郵件發(fā)信人的郵件服務(wù)器,中轉(zhuǎn)到收信人的郵件服務(wù)器,然后投遞到收信人的郵箱中。當(dāng)Bob想查看自 己的郵箱中的郵件消息時(shí),存放該郵箱的郵件服務(wù)器將以他提供的用戶名和口令認(rèn)證他。Alice的郵件服務(wù)器還得處理Bob的郵件服務(wù)器出故障的情況。如果 Alice的郵件服務(wù)器無(wú)法把郵件消息立即遞送到Bob的郵件服務(wù)器,Alice的服務(wù)器就把它們存放在消息隊(duì)列(message queue)中,以后再嘗試遞送。這種嘗試通常每30分鐘左右執(zhí)行一次:要是過(guò)了若干天仍未嘗試成功,該服務(wù)器就把這個(gè)消息從消息隊(duì)列中去除掉,同時(shí)以另 一個(gè)郵件消息通知發(fā)信人(即Alice)。

           

                 電子郵件

                 電子郵件是一種通過(guò)網(wǎng)絡(luò)實(shí)現(xiàn)相互傳送和接收信息的現(xiàn)代化通信方式。它是種用電子手段提供信息交換的通信方式,是Internet應(yīng)用最廣的服務(wù),通過(guò)網(wǎng)絡(luò)的電子郵件系統(tǒng),用戶可以用非常低廉的價(jià)格,以非常快速的方式,與世界上任何一個(gè)角落的網(wǎng)絡(luò)用戶聯(lián)系,這些電子郵件可以是文字、圖像、聲音等各種方式。同時(shí),用戶可以得到大量免費(fèi)的新聞、專題郵件,并實(shí)現(xiàn)輕松的信息搜索。

                 電子郵件由信封和內(nèi)容兩個(gè)部分組成。信封又稱郵件頭,電子郵件服務(wù)器根據(jù)信封上的信心來(lái)傳遞郵件的。內(nèi)容稱為郵件體,它用于提供郵件的具體內(nèi)容。

                 Internet上的電子郵件地址全球唯一,其格式為“郵箱名@郵件服務(wù)器域名”。域(郵件域)是電子郵件服務(wù)器的基本管理單位,郵件服務(wù)以域?yàn)榛A(chǔ),每個(gè)郵箱對(duì)應(yīng)一個(gè)用戶。其中郵件服務(wù)器域名必須是已注冊(cè)的DNS域名,并且必須要與MX(郵件交換機(jī))記錄匹配。DNS用于將域名、主機(jī)名解析為IP地址。MX記錄指向該域名的郵件服務(wù)器主機(jī)記錄,為郵件服務(wù)專用。

           

                 郵件客戶端軟件

                 郵件客戶端軟件負(fù)責(zé)與郵件服務(wù)器通訊,主要用于幫助用戶將郵件發(fā)送給SMTP服務(wù)器和POP3/IMAP郵件服務(wù)器讀取用戶的電子郵件。郵件客戶端軟件通常集撰寫、發(fā)送、接收郵件于一體。

           

           

                 電子郵箱

                 每一個(gè)電子郵件服務(wù)器之上都可以開始多個(gè)電子郵箱,電子郵箱也稱之為E-Mail地址。它類似于現(xiàn)實(shí)生活中的通訊地址,用戶通過(guò)它接受別人發(fā)來(lái)的電子郵件和向別人發(fā)送電子郵件。

                 電子郵箱的獲得需要在電子郵件服務(wù)器上進(jìn)行申請(qǐng),確切的說(shuō),電子郵箱其實(shí)就是用戶在郵件服務(wù)器上申請(qǐng)的一個(gè)賬戶。郵件服務(wù)器把接收到的郵件保持到為某個(gè)賬戶所分配的郵箱空間中,用戶通過(guò)其申請(qǐng)的用戶名和密碼登陸到郵件服務(wù)器上查看該地址已經(jīng)收到的電子郵件。

           

                 電子郵件的傳輸過(guò)程

                 電子郵件系統(tǒng)采用客戶/服務(wù)器模式。電子郵件傳送需要用到以下3個(gè)重要模塊:

                 MUAMail User Agent,郵件用戶代理):用戶通過(guò)它與電子郵件服務(wù)器打交道。MUA實(shí)際上就是郵件客戶端軟件。

                 MTAMail Transfer Agent,郵件傳輸代理):它主要負(fù)責(zé)處理所有接收和發(fā)送的郵件,為MUA或者MTA提供郵件發(fā)送服務(wù),接收其他MTA發(fā)送過(guò)來(lái)的郵件。

                 MDAMail Delivery Agent,郵件投遞代理):它負(fù)責(zé)郵件本地投遞。當(dāng)MTA決定某郵件發(fā)送本地用戶時(shí),MTA將郵件交給MDA程序進(jìn)行分發(fā),也就是說(shuō)投遞到用戶的。

                 具體的傳遞過(guò)程如下:

                      1、  發(fā)件人利用MUA將郵件發(fā)送給MTA

                      2、 MTA收到郵件后判斷收件人是不是本地賬戶,如果是本地賬戶,交由MDA投送到該賬戶的郵箱中,完成發(fā)送過(guò)程,跳到第5步。如果不是則執(zhí)行下一步驟。

                      3、 MTA根據(jù)其郵件中繼轉(zhuǎn)發(fā)設(shè)置來(lái)決定如何轉(zhuǎn)發(fā)郵件。

                      4、  最終目的的MTA將受到的交給他的MDA處理,有MDA將郵件投遞到收件人的郵箱中。

                      5、  收件人利用MUA通過(guò)POP/IMAP協(xié)議連接到郵箱所在的服務(wù)器,請(qǐng)求查看自己的收件箱是否有郵件,如果有郵件,將會(huì)通過(guò)它傳送個(gè)收件人的MUA

                 注意:提示郵件訪問服務(wù)的是POP或者IMAP服務(wù)器軟件,而并非當(dāng)初收下郵件的MTA,兩者的角色是分離的。

           

                 郵件傳輸協(xié)議

                 電子郵件服務(wù)傳輸主要是用到以下3中網(wǎng)絡(luò)協(xié)議

                  SMTP(簡(jiǎn)單郵件傳輸協(xié)議)

                 SMTPSimple Mail Transfer Protocol。標(biāo)準(zhǔn)TCP端口是25MUA將郵件發(fā)送到MTAMTA將郵件發(fā)送給下一個(gè)MTA,都是要使用SMTPSMTP的目標(biāo)是可靠高效地傳送郵件,它獨(dú)立于傳送子系統(tǒng)而且僅要求一條可以保證傳送數(shù)據(jù)單元順序的通道。

                 SMTP是一個(gè)“單向”的協(xié)議,它不能用戶從其他郵件服務(wù)器收取郵件。它本身是采用客戶/服務(wù)器模式,負(fù)責(zé)發(fā)送郵件的SMTP進(jìn)程就是SMTP客戶端,負(fù)責(zé)接收郵件的SMTP進(jìn)程就是SMTP服務(wù)器。一個(gè)完整的SMTP通信過(guò)程主要包括建立連接、傳送郵件、釋放連接三個(gè)過(guò)程。

                 建立連接:首先由發(fā)件人將要發(fā)送的郵件發(fā)送到郵件緩存,SMTP客戶端定期掃描郵件緩存,一旦發(fā)現(xiàn)有郵件,就與SMTP服務(wù)器建立TCP連接,然后發(fā)送HRLLO命令以附上發(fā)送方的主機(jī)名。

                 傳送郵件:SMTP客戶端使用MAIL命令開始傳送郵件,該命令提供發(fā)件人的地址;然后執(zhí)行RCPT命令,并提供收件人地址;最后執(zhí)行DATA命令傳送郵件內(nèi)容。

                 釋放連接:郵件傳送完畢后,SMTP客戶端發(fā)送OUT命令請(qǐng)求關(guān)閉TCP連接。

                   POP(郵局協(xié)議)

                   POPPost Office Protocol。標(biāo)準(zhǔn)TCP端口為110。主要用于電子郵件的接收。MUA經(jīng)由POP協(xié)議連接到MTA的用戶收件箱,以讀取或下載用戶在收件箱中郵件。

              目前用的較多的POP協(xié)議是POP3POP3使用 TCP 作為傳輸協(xié)議。

                 IMAPInternet信息訪問協(xié)議)

                 IMAPInternet Message Access Protocol。標(biāo)準(zhǔn)TCP端口為143,它也是讓MUAMTA收取郵件。目標(biāo)球IMAP協(xié)議的版本為IMAP4

                 POPIMAP兩者都可以用于收取郵件,都是采用客戶/服務(wù)器模式,兩者最主要的區(qū)別就在于他們檢索郵件的方式不同。使用POP時(shí),郵件駐留在服務(wù)器中個(gè),一旦接收郵件,郵件都從服務(wù)器上下載到用戶計(jì)算機(jī)上。而IMAP則能夠然該用戶了解到服務(wù)器上存儲(chǔ)郵件的情況,已下載的郵件仍然滯留在服務(wù)器中,以便于實(shí)現(xiàn)郵件歸檔和共享。

          posted @ 2014-05-04 06:19 ZT文萃 閱讀(421) | 評(píng)論 (0)編輯 收藏

          轉(zhuǎn)載自:
          http://www.cnblogs.com/chenssy/p/3308489.html
          版權(quán)歸作者所有。

                首先來(lái)看看淺拷貝和深拷貝的定義:

                淺拷貝:使用一個(gè)已知實(shí)例對(duì)新創(chuàng)建實(shí)例的成員變量逐個(gè)賦值,這個(gè)方式被稱為淺拷貝。

                深拷貝:當(dāng)一個(gè)類的拷貝構(gòu)造方法,不僅要復(fù)制對(duì)象的所有非引用成員變量值,還要為引用類型的成員變量創(chuàng)建新的實(shí)例,并且初始化為形式參數(shù)實(shí)例值。這個(gè)方式稱為深拷貝

                也就是說(shuō)淺拷貝只復(fù)制一個(gè)對(duì)象,傳遞引用,不能復(fù)制實(shí)例。而深拷貝對(duì)對(duì)象內(nèi)部的引用均復(fù)制,它是創(chuàng)建一個(gè)新的實(shí)例,并且復(fù)制實(shí)例。

                對(duì)于淺拷貝當(dāng)對(duì)象的成員變量是基本數(shù)據(jù)類型時(shí),兩個(gè)對(duì)象的成員變量已有存儲(chǔ)空間,賦值運(yùn)算傳遞值,所以淺拷貝能夠復(fù)制實(shí)例。但是當(dāng)對(duì)象的成員變量是引用數(shù)據(jù)類型時(shí),就不能實(shí)現(xiàn)對(duì)象的復(fù)制了。

                存在一個(gè)對(duì)象Person,代碼如下:

          復(fù)制代碼
          public class Person {     private String name;     private String sex;     private int age;          public Person(String name,String sex,int age){         this.name = name;         this.sex = sex;         this.age = age;     }          public Person(Person p){                   //拷貝構(gòu)造方法,復(fù)制對(duì)象         this.name = p.name;         this.sex = p.sex;         this.age = p.age;     } }
          復(fù)制代碼

                上面的對(duì)象Person有三個(gè)成員變量。name、sex、age。兩個(gè)構(gòu)造方法。第二個(gè)的參數(shù)為該對(duì)象,它稱為拷貝構(gòu)造方法,它將創(chuàng)建的新對(duì)象初始化為形式參數(shù)的實(shí)例值,通過(guò)它可以實(shí)現(xiàn)對(duì)象復(fù)制功能。

                又有一個(gè)對(duì)象Asian,如下:

          復(fù)制代碼
          public class Asian {     private String skin;     Person person;          public Asian(String skin,Person person){         this.skin = skin;         this.person = person;                    //引用賦值     }      public Asian(Asian asian){                 //拷貝構(gòu)造方法,復(fù)制對(duì)象         this(asian.skin,asian.person);                } }
          復(fù)制代碼

                上面對(duì)象也存在著兩個(gè)成員變量,skin 和Person對(duì)象

                對(duì)于person對(duì)象有如下:

          Person p1 = new Person("李四","mam",23);   Person p2 = new Person(P1);

                當(dāng)調(diào)用上面的語(yǔ)句時(shí)。P2對(duì)象將會(huì)對(duì)P1進(jìn)行復(fù)制。執(zhí)行情況如下如下圖:

                對(duì)于Asian對(duì)象有:

          Asian a1 = new Asian("yellow",new Person("李四","mam",23)); Asian a2 = new Asian(a1);

                New Asian(a1)執(zhí)行Asian類的拷貝構(gòu)造方法,由于對(duì)象賦值是引用賦值。使得a1和a2引用同一個(gè)對(duì)象

                如下圖:

                當(dāng)a1執(zhí)行某條可以改變?cè)撝档恼Z(yǔ)句時(shí),那么a1將會(huì)通過(guò)這個(gè)語(yǔ)句也可以改變a2對(duì)象的成員變量

                如果執(zhí)行以下語(yǔ)句:a2.name = new Person(a1.name)

                這時(shí)將會(huì)創(chuàng)建一個(gè)新的Person對(duì)象

                如下圖:


          posted @ 2014-05-04 06:15 ZT文萃 閱讀(380) | 評(píng)論 (0)編輯 收藏

          轉(zhuǎn)帖:

          http://www.cnblogs.com/chenssy/p/3695271.html
          版權(quán)歸作者所有。


               今天朋友問我String的內(nèi)容是真的不可變嗎?我肯定告訴他是的?因?yàn)樵谖业闹饔^意識(shí)里String就是一個(gè)不可變的對(duì)象。于是他給我發(fā)了這段程序:

          復(fù)制代碼
          public class StringTest {     public static void main(String[] args) throws Exception {         String a = "chenssy";         System.out.println("a = " + a);         Field a_ = String.class.getDeclaredField("value");         a.setAccessible(true);         char[] value=(char[])a.get(a);         value[4]='_';   //修改a所指向的值         System.out.println("a = " + a);     } }
          復(fù)制代碼

                看到這個(gè)簡(jiǎn)單的程序,我笑了,你這不是從底層來(lái)修改String的值么?從這里來(lái)理解String的值肯定是可以改變的啦(我們應(yīng)該始終相信String的不可變性)!接著他再給我一段程序:

          復(fù)制代碼
          public class StringTest {     public static void main(String[] args) throws Exception {         String a = "chenssy";         String b = "chenssy";         String c = new String("chenssy");         System.out.println("--------------修改前值-------------------");         System.out.println("a = " + a);         System.out.println("b = " + b);         System.out.println("c = " + c);         //修改String的值         Field a_ = String.class.getDeclaredField("value");         a_.setAccessible(true);         char[] value=(char[])a_.get(a);         value[4]='_';   //修改a所指向的值                  System.out.println("--------------修改后值-------------------");         System.out.println("a = " + a);         System.out.println("b = " + b);         System.out.println("chenssy");         System.out.println("c = " + c);     } }
          復(fù)制代碼

                乍看這程序是異常的簡(jiǎn)單,無(wú)非就是賦值、改值、輸出嘛!可能你現(xiàn)在就會(huì)毫不猶豫的說(shuō)太簡(jiǎn)單了結(jié)果就是……。但是!!你的毫不猶豫會(huì)害死你,而且你的結(jié)果很可能錯(cuò)誤。那么運(yùn)行結(jié)果是什么呢?

          復(fù)制代碼
          --------------修改前值------------------- a = chenssy b = chenssy c = chenssy --------------修改后值------------------- a = chen_sy b = chen_sy chen_sy c = chen_ssy
          復(fù)制代碼

                修改前值很容易理解,但是修改后值呢?是不是有點(diǎn)兒不理解呢?你可能會(huì)問:為什么System.out.println("chenssy");的結(jié)果會(huì)是chen_ssy,System.out.println("c = " + c);也是chen_ssy呢?

                要明白這個(gè)其實(shí)也比較簡(jiǎn)單,掌握一個(gè)知識(shí)點(diǎn):字符串常量池。

                我們知道字符串的分配和其他對(duì)象分配一樣,是需要消耗高昂的時(shí)間和空間的,而且字符串我們使用的非常多。JVM為了提高性能和減少內(nèi)存的開銷,在實(shí)例化字 符串的時(shí)候進(jìn)行了一些優(yōu)化:使用字符串常量池。每當(dāng)我們創(chuàng)建字符串常量時(shí),JVM會(huì)首先檢查字符串常量池,如果該字符串已經(jīng)存在常量池中,那么就直接返回 常量池中的實(shí)例引用。如果字符串不存在常量池中,就會(huì)實(shí)例化該字符串并且將其放到常量池中。由于String字符串的不可變性我們可以十分肯定常量池中一定不存在兩個(gè)相同的字符串(這點(diǎn)對(duì)理解上面至關(guān)重要)。

                我們?cè)賮?lái)理解上面的程序。

                String a = "chenssy";

                String b = "chenssy";

                a、b和字面上的chenssy都是指向JVM字符串常量池中的”chenssy”對(duì)象,他們指向同一個(gè)對(duì)象。

                String c = new String("chenssy");

                new關(guān)鍵字一定會(huì)產(chǎn)生一個(gè)對(duì)象chenssy(注意這個(gè)chenssy和上面的chenssy不同),同時(shí)這個(gè)對(duì)象是存儲(chǔ)在堆中。所以上面應(yīng)該產(chǎn)生了兩 個(gè)對(duì)象:保存在棧中的c和保存堆中chenssy。但是在Java中根本就不存在兩個(gè)完全一模一樣的字符串對(duì)象。故堆中的chenssy應(yīng)該是引用字符串 常量池中chenssy。所以c、chenssy、池chenssy的關(guān)系應(yīng)該是:c--->chenssy--->池chenssy。整個(gè) 關(guān)系如下:

                201404271001

                通過(guò)上面的圖我們可以非常清晰的認(rèn)識(shí)他們之間的關(guān)系。所以我們修改內(nèi)存中的值,他變化的是所有。

                總結(jié):雖然a、 b、c、chenssy是不同的對(duì)象,但是從String的內(nèi)部結(jié)構(gòu)我們是可以理解上面的。String c = new String("chenssy");雖然c的內(nèi)容是創(chuàng)建在堆中,但是他的內(nèi)部value還是指向JVM常量池的chenssy的value,它構(gòu)造 chenssy時(shí)所用的參數(shù)依然是chenssy字符串常量。

                為了讓各位充分理解常量池,特意準(zhǔn)備了如下一個(gè)簡(jiǎn)單的題目:

          String a = "chen"; String b = a + new String("ssy");
                   創(chuàng)建了幾個(gè)String對(duì)象??

          posted @ 2014-05-04 06:10 ZT文萃 閱讀(219) | 評(píng)論 (0)編輯 收藏

          Class的getResource方法,實(shí)際上是靠調(diào)入這個(gè)類的ClassLoader的getResource方法來(lái)實(shí)現(xiàn)的,如果調(diào)入這個(gè)類的ClassLoader是原生的BootStrap ClassLoader,這個(gè)ClassLoader是用C++寫成的,在Java中沒有相對(duì)應(yīng)的物件。這時(shí)候的實(shí)現(xiàn)靠的是ClassLoader的靜態(tài)方法getSystemResource。

          只有當(dāng)使用Class類的getResource方法的時(shí)候,才會(huì)有下面介紹的那種算法。

          這種算法就是說(shuō),如果你指定的路徑以/開頭,那么就是從ClassPath的起點(diǎn)開始尋找這個(gè)路徑。如果直接以某個(gè)名字開頭,那么就是從當(dāng)前包名的目錄為起點(diǎn)開始尋找。
          所以大家如果用過(guò)hibernate就知道,有些表示類到數(shù)據(jù)庫(kù)表的映射關(guān)系的xml文件就和這個(gè)類的class文件放在一起,這樣它就直接使用這個(gè)類.class.getResource方法來(lái)得到這個(gè)xml文件。

          而在使用ClassLoader的getResource方法的時(shí)候,永遠(yuǎn)是以Classpath為直接起點(diǎn)開始尋找資源的。不用擔(dān)心從什么包開始尋找的問題。

          用Class.getResource不加/就是從當(dāng)前包開始找,用ClassLoader.getResource不加/就是直接從Classpath的起點(diǎn)開始尋找。

          當(dāng)然,如果覺得麻煩,你定位資源的時(shí)候全部都使用/開頭的方式就好了

          posted @ 2014-05-02 15:48 ZT文萃 閱讀(551) | 評(píng)論 (0)編輯 收藏







          查找?guī)в薪o定名稱的資源,查找給定類相關(guān)的資源的規(guī)則是通過(guò)定義類的 class loader 實(shí)現(xiàn)的。此方法委托給此對(duì)象的類加載器。如果此對(duì)象通過(guò)引導(dǎo)類加載器加載,則此方法將委托給 ClassLoader.getSystemResource(java.lang.String)

          在委托前,使用下面的算法從給定的資源名構(gòu)造一個(gè)絕對(duì)資源名:

          • 如果 name'/'  開始,則絕對(duì)資源名是 '/' 后面的 name 的一部分。
          • 否則,絕對(duì)名具有以下形式:
               modified_package_name/name 

            其中 modified_package_name 是此對(duì)象的包名,該名用 '/' 取代了 '.' ('\u002e')。

          Class.getResource(""); 獲取classpath

           

          Class.getResource("JMF.class"); 代表獲取相于類路徑當(dāng)前包下的SendService.class的類路徑.

          /D:/bak/upload/upload/WebRoot/WEB-INF/classes/jmf/JMF.class-------->打印出的結(jié)果

          Class.getResource("/jmf/WebCamSwing.class"); /jmf/WebCamSwing.class->代表相于類路徑的絕對(duì)路徑

          file:/D:/bak/upload/upload/WebRoot/WEB-INF/classes/jmf/JMF.class  -------->打印出的結(jié)果

           

          我們?cè)趺传@得Object的類路徑:

          Class.getResource("/java/lang/Object.class") 因?yàn)镺bject是通過(guò)引導(dǎo)類加載器 (BootStrapClassLoader)加載的,所以此方法通過(guò)系統(tǒng)類加載器來(lái)查找資料, 所以我們要指定類的絕對(duì)路徑/java/lang /Object.class

          public java.net.URL getResource(String name) {
                  name = resolveName(name);
                  ClassLoader cl = getClassLoader0();
                  if (cl==null) {
                      // A system class.
                      return ClassLoader.getSystemResource(name);
                  }
                  return cl.getResource(name);
              }

           

          我們來(lái)看看如何通過(guò)系統(tǒng)類加載器來(lái)查找Object:

          Class.getClassLoader().getSystemResource("java/lang/Object.class")

           

          打印出來(lái)的結(jié)果多是:

          jar:file:/E:/Program/Java/jdk1.5.0_15/jre/lib/rt.jar!/java/lang/Object.class

           

          為什么getResource("")前面要加"/",而getSystemResource("")前面不用加呢?

          private String resolveName(String name) {
                  if (name == null) {
                      return name;
                  }
                  if (!name.startsWith("/")) {
                      Class c = this;
                      while (c.isArray()) {
                          c = c.getComponentType();
                      }
                      String baseName = c.getName();
                      int index = baseName.lastIndexOf('.');
                      if (index != -1) {
                          name = baseName.substring(0, index).replace('.', '/')
                              +"/"+name;
                      }
                  } else {
                      name = name.substring(1);
                  }
                  return name;
              }

           

          其實(shí)最后還是要把"/"去掉的...

          posted @ 2014-05-02 15:34 ZT文萃 閱讀(290) | 評(píng)論 (0)編輯 收藏

          轉(zhuǎn)載自:

          1 JButton 圖片和文字按鈕的實(shí)現(xiàn)



          JButton btn1 = new JButton("打開", new ImageIcon(ImageView.class.getResource("10.png"))) ;

          btn1.setHorizontalTextPosition(SwingConstants.CENTER);

          btn1.setVerticalTextPosition(SwingConstants.BOTTOM);

           

          效果圖 :

          clip_image003

          2 JButton 圖片透明按鈕的實(shí)現(xiàn)



          setLayout(new FlowLayout(FlowLayout.RIGHT, 30, 0));

          btn1.setIcon(UIConfig.getImgUrl("常用交易字.png"));

          btn1.setRolloverIcon(UIConfig.getImgUrl("常用交易.png"));

          btn1.setBorderPainted(false);

          btn1.setFocusPainted(false);

          btn1.setContentAreaFilled(false);

          btn1.setFocusable(true);

          btn1.setMargin(new Insets(0, 0, 0, 0));

          btn1.setText("常用交易");

           

          clip_image006

          3JRadioButton 圖片透明按鈕的實(shí)現(xiàn)

          JRadioButton radio = new JRadioButton(UIConfig.getImgUrl("常用交易字.png") );

          radio.setContentAreaFilled(false);

          radio.setRolloverIcon(UIConfig.getImgUrl("常用交易.png"));

          radio.setSelectedIcon(UIConfig.getImgUrl("常用交易.png"));

          clip_image006[1]

          posted @ 2014-04-27 11:12 ZT文萃 閱讀(508) | 評(píng)論 (0)編輯 收藏

          posted @ 2014-03-28 08:56 ZT文萃 閱讀(146) | 評(píng)論 (0)編輯 收藏

          被洗腦的中國(guó)人常用的10句話

          NO.1【你不能改變別人,只能改變自己】

          適用人群:這句話對(duì)有一種人是管用的,那就是一天到晚只會(huì)嫌別人做的不好,似乎全天下都欠了他從來(lái)不反思自己是不是有問題的人。特別是那種試圖讓全世界都按照他們的方式運(yùn)轉(zhuǎn)的人。只可惜,越是這種人,喊“改變自己”喊得越響,他們是在要求別人改變來(lái)適應(yīng)他們的固執(zhí)。

          奴性潛臺(tái)詞:改變有很多種,但是一大部分喜歡用這句話給別人洗腦的人,強(qiáng)調(diào)的總是讓人變得柔順的那一面。遇到了矛盾,要求你先理解體諒,先改變自己的態(tài)度,而且是“只能”這樣做,他們會(huì)反復(fù)地強(qiáng)調(diào)你“只能”這樣做,甚至把某些不該你承擔(dān)的責(zé)任,推到你的頭上。

          破解:憑什么不能改變別人,就要改變自己?需要改變的是對(duì)付別人的方式,而不是自己的原則。改變有很多種,比如有人天天抽你,你改變不了這個(gè)人,但是你可以選擇1.抽他2.離他遠(yuǎn)點(diǎn),他要是繼續(xù)纏著不放,抽他3.調(diào)整心態(tài)繼續(xù)忍耐。如果抽的夠狠,未必不能改變別人。

          NO.2【社會(huì)就是這樣,你又不能改變社會(huì),只能適應(yīng)】

          適用人群:只埋怨社會(huì)不公平,世界不公平,沒有好機(jī)遇而自己完全不努力的人。把自己的loser全部歸于社會(huì)的不公平,全部歸于“沒趕上好時(shí)候”,成天懷念所謂的“從前人們多么多么有道德”。

          奴性潛臺(tái)詞:這句話聽得最多的是在上學(xué)的時(shí)候——“現(xiàn)在中國(guó)就是應(yīng)試教育,你又當(dāng)不了教育部長(zhǎng),不能改變,你就只能適應(yīng)”,畢業(yè)了,他們會(huì)用這句話來(lái)扼殺夢(mèng)想,“你想的多好多好,但現(xiàn)實(shí)是這樣,你只能適應(yīng)”。用這句話洗腦的用意在于——我們可以承認(rèn)有些事情是不合理的,但是你們能怎么樣,你們沒有力量挑戰(zhàn)社會(huì)大趨勢(shì)的權(quán)威,就不要指責(zé)社會(huì)大趨勢(shì)的不合理了,社會(huì)讓你干啥,你就干啥。所以這句話經(jīng)常被用來(lái)堵嘴,凡是對(duì)某些事物有不同的看法,對(duì)社會(huì)弊端有自己的批評(píng),往往會(huì)遭到這句話的堵嘴攻擊。

          破解:先不討論人能不能改變社會(huì),這沒啥可論的,就先承認(rèn)如我等草民是沒有能力移山填海,這句話仍然渾身破綻。社會(huì)就是“這樣”,就是哪樣呢?你只能適應(yīng)?適應(yīng)哪種趨勢(shì)呢?洗腦者口中的社會(huì)現(xiàn)實(shí)是否就是真正的社會(huì)現(xiàn)狀?例如最常見的“公務(wù)員至上”的擇業(yè)觀,即使是目前這確實(shí)是一種趨勢(shì),但也不是唯一的出路。再比如現(xiàn)在的婚戀觀,在某些人那里變成了完全的物質(zhì)交換。這些所謂的趨勢(shì),并非不可改變的洪流,它們看似氣勢(shì)洶洶,其實(shí)其中包含很多被放大的焦慮。如這類現(xiàn)象,你或無(wú)法改變,也不必非要“適應(yīng)”。再退一步,適應(yīng),是否就等于隨波逐流?無(wú)奈的事,不合理的事有很多,就像郭嘉的教育,我們不是教育部長(zhǎng),是不是就應(yīng)該對(duì)不合理之處避之不談?甚至認(rèn)為那就是合理的?或者是不是把自己弄成一個(gè)只會(huì)學(xué)習(xí)的書呆子,這才叫適應(yīng)?即使不能改變社會(huì),我們總有保持清醒的權(quán)利,在這個(gè)神奇的年代,茫茫然隨大流,怎么死的可能都不知道。

          NO.3【不要抱怨,抱怨又解決不了問題】

          適用人群:極端消極,除了抱怨什么都不做的一少部分人。為了抱怨而抱怨的人。

          奴性潛臺(tái)詞:與這句話類似的還有“有抱怨的時(shí)間不如去做blabla……”“有抱怨的時(shí)間你早就巴拉巴拉……”“有本事不要在這里抱怨,去巴拉巴拉……”。事實(shí)上,說(shuō)這些話的人有意無(wú)意忽略了一點(diǎn),抱怨和抱怨是不一樣的,“抱怨”對(duì)每個(gè)人的意義也是不同的。被他們稱作“抱怨”的情緒,細(xì)分起來(lái)能夠分成很多種,他們會(huì)把對(duì)某些事物的攻擊,求責(zé)、不滿、批評(píng)全部劃分進(jìn)“抱怨”的行列,然后一棍子打死,這樣能夠化解很多指責(zé)和批評(píng),當(dāng)你批評(píng)的時(shí)候,說(shuō)你是抱怨,一下子就可以把責(zé)任推到你的心態(tài)上。同時(shí),“解決問題”的說(shuō)法,完全忽視世上有“心理問題”,只集中于“現(xiàn)實(shí)問題”,忽視人是有情感有悲喜的,完全把人看做一種木偶般的存在。

          破解: 抱怨其實(shí)是一種不太受周圍人歡迎的行為,特別是不能感同身受的人,他們會(huì)本能地逃避負(fù)面情緒,并且阻止他人憤怒情緒的表達(dá)。對(duì)于統(tǒng)治者來(lái)說(shuō),被統(tǒng)治者的抱怨,是一種危險(xiǎn)的信號(hào),代表內(nèi)心有怨氣,有怨氣就可能會(huì)有反抗。 甚至很多本意是善良的人,他們會(huì)簡(jiǎn)單認(rèn)為,滿臉笑容滿口樂觀語(yǔ)言的人,就一定是比正在抱怨的人快樂,從而站出來(lái)阻止抱怨,鼓勵(lì)樂觀。事實(shí)上,抱怨的積極意義比想象中大得多,通過(guò)適當(dāng)?shù)谋г拱l(fā)泄情緒,直面真實(shí),明確責(zé)任,其意義有時(shí)甚至大于所謂“解決問題”。至于對(duì)付某些圣母,我會(huì)直接告訴他——我這可不是在抱怨,我是在罵你。

          NO.4【少抱怨,多感恩】

          適應(yīng)人群:天天在喊這些話的人,最需要這句話。

          奴性潛臺(tái)詞:又是一句生生被毀了的曾經(jīng)有道理的話,毀掉這句話的,就是最推崇它的那一批人。它越來(lái)越變成了強(qiáng)勢(shì)對(duì)弱勢(shì)的一種要求,這使它成為這十句話的奴性之首。對(duì)領(lǐng)導(dǎo),少抱怨多感恩。對(duì)社會(huì),少抱怨多感恩。對(duì)國(guó)家,少抱怨多感恩。對(duì)老師,少抱怨多感恩。對(duì)父母,少抱怨多感恩。上對(duì)下的要求,強(qiáng)對(duì)弱的要求。對(duì)別人提這樣的要求,自己就可以少一點(diǎn)承擔(dān)責(zé)任,少一點(diǎn)付出。然后,弱勢(shì)和弱勢(shì)之間竟然也在互相說(shuō)著——“咱們要少抱怨多感恩呀,這樣才能活得快樂呀”。甚至,把該怨的事說(shuō)成恩,讓你去感恩戴德,天朝這樣的事還少嗎?

          破解:就事論事。怨恨該怨恨的,感激該感激的。 鍛煉自己區(qū)別這二者的能力 。子曰過(guò)的——以直報(bào)怨,以德報(bào)德。

          NO.5【比起誰(shuí)誰(shuí)誰(shuí),你已經(jīng)很幸福了】

          適用人群:無(wú),我從不認(rèn)為幸福不幸福是比出來(lái)的

          奴性潛臺(tái)詞:他們總會(huì)找到比你更慘的人。來(lái)證明你“其實(shí)已經(jīng)很幸福了”。目的是讓你知足,知足,就不會(huì)提更多的要求,知足,就不會(huì)有太多的對(duì)他們的指責(zé)。甚至,通過(guò)找一個(gè)比你過(guò)的慘的人,讓你感覺產(chǎn)生誤差,以為他們給你吃的苦還都是甜的。這是那些洗腦者的邏輯。有比你慘的人,你就覺得自己幸福了,某種程度上不是一種好的心態(tài)。你嚼著窩頭,回頭一看還有吃不上飯的,你就覺得窩頭啃著挺香,你不去想想怎么能讓自己吃上白面?你買不起鞋,回頭一看還有人沒有腳,你就滿足了?你不去努力掙錢給自己買鞋?這幾年,勸人要知足的越來(lái)越多,鼓勵(lì)人有追求的卻越來(lái)越少。

          破解:人和人是不一樣的,幸福還是痛苦只有自己知道,不能因?yàn)槭郎蠑嗤鹊娜硕啵筒辉试S崴了腳的人哼哼。謝絕比較誰(shuí)更慘,謝絕“你這樣已經(jīng)算是很幸福”。人幸福不幸福的標(biāo)準(zhǔn)是自己的,不是比較出來(lái)的。
          尤其是不要在我郁悶的時(shí)候,再跑過(guò)來(lái)和我說(shuō)你當(dāng)年多慘多慘你現(xiàn)在這個(gè)算什么。 對(duì)他人的傷痛表示輕視,是一件殘忍的事情。再有人這樣對(duì)你抽他丫的

          NO.6.【凡事多從自己身上找原因】

          適用人群:建議那些總是以此要求別人的人試試。

          奴性潛規(guī)則:用 “凡事”取代就事論事,以偏概全,用一個(gè)“多”“少”的界定,直接混淆了黑白。要求你凡事對(duì)內(nèi)歸因,就像是這十句話的共同特點(diǎn)那樣,是對(duì)對(duì)方錯(cuò)誤的有意遷就和回避。矛盾的起因,該誰(shuí)的就是誰(shuí)的,如果要“多”找自己的,“少”找別人的,方式就只能是把別人的錯(cuò)誤壓在自己頭上。這一點(diǎn)在父母和孩子的關(guān)系中體現(xiàn)的尤其明顯,很多父母尤其喜歡把矛盾的責(zé)任全部推給孩子,把自己情緒的起因全部推給孩子。一個(gè)人畏懼強(qiáng)權(quán),不敢把原因歸于真正的責(zé)任人,而是歸結(jié)到自己身上,善良且可悲。

          破解:凡事向內(nèi)歸因,對(duì)心理產(chǎn)生的壓力是巨大的,承擔(dān)太多本不該屬于自己的過(guò)錯(cuò)。如果形成了對(duì)內(nèi)歸因的習(xí)慣,外界的傷害會(huì)有翻倍加在你身上的后果。不回避自己的責(zé)任,但“原因”該誰(shuí)的就是誰(shuí)的,我們沒有“多”找自己原因的義務(wù)。

          NO.7【快樂也是一天,不快樂也是一天,為什么不過(guò)的快樂一點(diǎn)?】

          適用人群:……………………我也不知道對(duì)哪些人才適用這一句……(這句話我聽得太多了,不走大腦地就說(shuō),自己不爽的時(shí)候卻從來(lái)用不上,最極品的一次,我的一個(gè)朋友發(fā)帖抱怨極品上司對(duì)她的欺壓,下面回帖竟然說(shuō)反正快樂不快樂都是一天,還是開心地過(guò)吧。我靠,你哪怕什么都不說(shuō)呢,也比來(lái)這么一句好)

          奴性潛臺(tái)詞:這是極端麻木的一句話,很多人只是機(jī)械地重復(fù)它,自己卻做不到,足以說(shuō)明這是句腦殘廢話。對(duì)大多數(shù)人來(lái)說(shuō),在多數(shù)時(shí)候,快樂還是不快樂,是有原因的。閑著沒事一直傻樂的,閑著沒事一直不快樂的,少。說(shuō)這話的人,把人活著的每一天,描述成驢拉磨一樣的僵化,“快樂也是拉一天磨,不快樂也是拉一天磨,為什么不快樂地拉磨呢”他們宣揚(yáng)樂觀,可他們本身對(duì)待生活的態(tài)度,卻不是積極的,既然不能去死,那就混一天算一天。回避不快樂的根源,這不是樂觀,是麻木。把這話變一下,就可以看出它的荒謬性。

          “生病也是一天,不生病也是一天,你干嘛非生病呢?” 用這話洗腦的人,正是強(qiáng)化你對(duì)人生的無(wú)能為力感,同時(shí)宣揚(yáng)快樂至上,不管你的目標(biāo)是什么,一句快樂最重要,統(tǒng)統(tǒng)抹殺。

          破解:有病別傻樂了,吃藥去吧!

          NO.8【父母都是為了你好,只是方式不對(duì)】

          適用人群:如果有人不分情況地對(duì)你說(shuō)這個(gè),揍他,然后把這句話送給他。 奴性潛臺(tái)詞:只要目的是“為了你好”,任何方式你都要接受,甚至還要感恩。但是,“為了你好”這件事是不能證明的,因?yàn)榇蛑鵀榱四愫玫钠焯?hào)做出的傷害,全部會(huì)用“方式不對(duì)”來(lái)掩飾。這是流氓邏輯。 用這句話可以隔絕一切講道理的可能性 所有的父母都是為了你好——所以你的父母肯定是為了你好父母在所有事上都是為了你好——所以在這件事上父母是為了你好,因?yàn)槭菫榱四愫?#8212;—所以你要接受推論完成,結(jié)果是你要無(wú)條件接受父母的一切。

          破解:一個(gè)人,強(qiáng)調(diào)自己的父母是對(duì)自己好的,強(qiáng)調(diào)自己愛自己的父母,完全沒有問題,值得支持。但他沒有資格判斷別人的父母是不是這樣的。更沒有資格在一件他不了解的事情上,斷言誰(shuí)對(duì)誰(shuí)錯(cuò)。因?yàn)橛胁糠指改福诤芏嗍律鲜窃?#8220;為孩子好”,就以此斷言所有的父母都是如此,是很腦殘的。 即使是屬于“真的好”的一部分,此言也不可取。父母所追求的,是他們所認(rèn)為的好,不一定是孩子認(rèn)為的好。 方式不對(duì),也應(yīng)該為這份不對(duì)負(fù)責(zé)。 方式不對(duì),子女也有權(quán)反抗。以上都是廢話,最想說(shuō)的是——圣母退散。

          NO.9【沒有不愛自己孩子的父母】

          這一句在邏輯上脆弱不堪的話,卻是十句話中的大BOSS。 沒有不愛孩子的父母=所有的父母都愛自己的孩子要推翻這條假設(shè),僅需要一個(gè)反證即可。事實(shí)上,反證絕對(duì)不僅一個(gè),只是多數(shù)圣母,對(duì)這些反證會(huì)選擇無(wú)視。或者干脆在“愛”的定義上做文章,把傷害說(shuō)成是愛,是表達(dá)方式錯(cuò)了的愛。所謂“表達(dá)”,需要有“內(nèi)在”,沒有“里”何來(lái)“表”,內(nèi)心無(wú)愛,如何能表達(dá)出愛?甚至當(dāng)有的父母自己說(shuō)出不愛自己的孩子時(shí),圣母?jìng)円矔?huì)選擇性無(wú)視。之所以有這么多人支持這個(gè)觀點(diǎn),不僅僅是因?yàn)殚L(zhǎng)期的洗腦,也因?yàn)檫@是一個(gè)能夠給人以好處的前提。

          推理1:所有的父母都愛自己的孩子

          我是你的父母

          我必然愛你 然后可以在“愛”的旗號(hào)下為所欲為。

          推理2:所有父母都愛自己的孩子

          我是他們的孩子

          他們必然愛我

          然后可以暫時(shí)忽視傷害,取得內(nèi)心平衡。

          破解:還是那句話,你父母愛不愛你,你愛不愛父母,你自己感覺是就可以是。

          但是你沒有資格判斷另外兩個(gè)人之間有沒有那種愛。 人心是復(fù)雜的,父母也分很多種。

          NO.10【 再過(guò)幾年你就不這樣想了】

          奴性潛臺(tái)詞:這句話的潛臺(tái)詞其實(shí)是——再過(guò)幾年你就會(huì)像我們這樣想。隨著年齡閱歷的變化,想法改變會(huì)很正常。但是,沒有人能夠斷言自己將來(lái)會(huì)怎么想。持此觀點(diǎn)的人,認(rèn)為對(duì)事物的看法是唯一的,世上所有的人都會(huì)“這樣想”,沒有“這樣想”的人,僅僅是因?yàn)闀r(shí)間還不到。用這句話給你洗腦,是在告訴你,你早晚會(huì)像我們一樣思考的,還不如現(xiàn)在就聽我們的,以此打擊你對(duì)自己判斷的信心。如果你真的對(duì)自己的判斷完全失去信心,認(rèn)為自己的未來(lái)必然會(huì)按他們的思維方式進(jìn)行,他們的目的就達(dá)到了。

          世界上又成功地多了一個(gè)復(fù)制品,然后這個(gè)復(fù)制品會(huì)繼續(xù)去勸說(shuō)別人。

          破解:(是不是有點(diǎn)惡毒?) 再過(guò)幾年人還會(huì)死呢。

          posted @ 2014-03-27 08:01 ZT文萃 閱讀(238) | 評(píng)論 (0)編輯 收藏

          人真的需要知道自己要什么,下文值得一看。 

                  98年本科畢業(yè),又順利地被保研,當(dāng)時(shí)的我只是一個(gè)憨憨的書呆子,純潔的如同高中生,在清華這種 和尚廟一般的理工學(xué)校里呆了四年,女孩似乎是山下的老虎,神秘得讓我一見就臉紅心跳。未來(lái)是什么對(duì)于我就是“讀完研再說(shuō)”,反正成績(jī)還行,不讀白不讀。天 上掉了餡餅,用我的兄弟的話來(lái)說(shuō)。香港正好回歸一周年,教育部要選派一批本科畢業(yè)生去香港科技大學(xué)讀研,以加強(qiáng)兩地的教育和科研交流。清華當(dāng)然要占不少名 額,系里的幾個(gè)牛人去了美國(guó),所以這個(gè)餅就掉到了我頭上,確實(shí)是個(gè)不錯(cuò)的餅,不用考G、考托、全額獎(jiǎng)學(xué)金,連什么手續(xù)都是學(xué)校和教育部包辦了,我分文不 花,后來(lái)香港科大的聯(lián)絡(luò)人抱怨中國(guó)的辦事效率和程序煩瑣,至于怎樣的麻煩過(guò)程,我至今都一無(wú)所知。
            香港科大
             就這么糊里糊涂地來(lái)到了香港。依山傍海的科技大學(xué)美得如同世外桃源,現(xiàn)代感的建筑更讓我們爽眼。當(dāng)時(shí)的一個(gè)哥們說(shuō):“媽的,就是用銀子在荒山野嶺堆出來(lái) 的,這樣的物質(zhì)條件算是讓我滿足了。”后來(lái)得知就是亞洲最美麗校園,倒也絲毫不懷疑。據(jù)說(shuō)是香港政府感到了貿(mào)易和服務(wù)的優(yōu)勢(shì)正受中國(guó)沿海城市的挑戰(zhàn),而科 技就是競(jìng)爭(zhēng)力,就下了狠心投錢建了這學(xué)校,請(qǐng)來(lái)了學(xué)者。耗資400億港幣,相當(dāng)于微軟公司一年的純利。組織的參觀,教授的講話,英語(yǔ)的培訓(xùn)很快就過(guò)去了, 當(dāng)時(shí)的新奇興奮也褪得干凈,每天面對(duì)這青山海景,最后也麻木得沒有感覺了。由此可以推測(cè)娶一個(gè)漂亮老婆是沒有多大意義的,如果不是為了炫耀。教授大多是華 人,臺(tái)灣和大陸出身的不少,反倒香港人是少數(shù)派,很多都是在北美的名校里拿了PhD,奔這里的高薪來(lái)了,他們的PhD頭銜總要和名字相片掛一起,掛一輩 子,Harvard和Standford之類的當(dāng)然就香了。正教授可以一年拿到一百多萬(wàn)港幣,也就是一個(gè)月可以買小汽車,比一般的美國(guó)大學(xué)高。知識(shí)真的值 錢了,讓我們充滿了對(duì)未來(lái)的向往。有回和教授們吃飯,談及大陸大學(xué)教授的待遇,他們就感慨:“知識(shí)分子真被廉價(jià)到了可恥的地步。”我們也無(wú)話可說(shuō),反正不 是我的錯(cuò)。然而錢不是好拿的,很多教師正是三十出頭,教授職稱還未到手,和學(xué)校只是幾年合同,其他的學(xué)者也不斷在申請(qǐng)進(jìn)來(lái),所以壓力頗大,辛勤程度比公司 打工仔有過(guò)之而無(wú)不及。既然自己做學(xué)問要緊,培養(yǎng)學(xué)生的事就要往后排了。剛進(jìn)來(lái)時(shí)很多教師和我們親切講話,之后就不見了,好久不見就不認(rèn)得。研究生當(dāng)然有 導(dǎo)師的,只要自己不去找他,他是肯定不會(huì)找我的。上課之后就是絕對(duì)的自由,當(dāng)時(shí)自由得很是愜意。

                  蕭伯納說(shuō)人生的苦悶有二,一是欲望沒有被滿足,二是它得到了滿足。這話的確是部分的真理。當(dāng)我住在這絕世美麗的地方,可以隨心所欲的去商店買東西不用擔(dān)心 付不起帳,可以任意的支配自己時(shí)間時(shí),最初的半年里,卻發(fā)現(xiàn)情緒每況愈下。西方化的建筑設(shè)計(jì)將個(gè)人的所謂privacy保護(hù)發(fā)揮到極致,進(jìn)了宿舍就基本感 覺不到他人的存在,同單元的人也有獨(dú)立的臥室,大家都是進(jìn)了房,將門一關(guān),隔離了,誰(shuí)也不好意思去敲門。剛來(lái)時(shí)認(rèn)識(shí)的一伙人,后來(lái)發(fā)現(xiàn)根本遇不著,如同消 失了一般。同住一起的是三十好幾的叔叔級(jí)人物,偶爾可以說(shuō)上一兩句話,卻永無(wú)可能說(shuō)很多。大家都像是住在不同的空間里做研究,忙碌的無(wú)瑕顧及他人。

             平心而論,對(duì)于一個(gè)成熟的研究者,如果他有確定的目標(biāo)和興趣,對(duì)生活人生都不再有不切實(shí)際的幻想,準(zhǔn)備投身科學(xué)研究中,那么這里真是一個(gè)好環(huán)境。但是我 種茫茫睜著無(wú)知的眼睛的毛頭小子,卻是完全另外的感覺。那種茫然的苦悶感覺真是難以描述,找不到人玩,只是將窗戶開了又關(guān),關(guān)了又開,不停的喝水,仍然感 覺不舒服。懷念在清華的破樓里相互串門打鬧的日子,懷念抱著籃球在走廊里叫一聲就應(yīng)者云集的日子,可是懷念解決不了問題。以孩子的心理去進(jìn)入成熟嚴(yán)謹(jǐn)?shù)沫h(huán) 境,不可不說(shuō)是一次考驗(yàn)。

            多年的功利教育的辛勤培養(yǎng),我一路順當(dāng)?shù)刈哌^(guò)來(lái),發(fā)現(xiàn)完全的上當(dāng)。我在成功的通過(guò)了一次次考后,最終都不知 道我為什么要通過(guò)這些占距人生的考試,這個(gè)所謂的優(yōu)秀學(xué)生只是在不停地讓自己去符合那個(gè)“優(yōu)秀”的外在標(biāo)準(zhǔn)來(lái)麻痹自己的虛榮心,而自己,那個(gè)真正的自己卻 一直沒有存在過(guò),沒有發(fā)育過(guò)。我學(xué)的任何課程都無(wú)法幫我解決當(dāng)時(shí)的苦惱,那么每天學(xué)那些微分方程又是為了什么?還去為了父母的微笑,人們的贊許嗎?年年得 獎(jiǎng)學(xué)金的清華畢業(yè)生是了這么一個(gè)怪物:不知道自己要什么,也不知道生活是什么,對(duì)社會(huì)毫無(wú)接觸,二十出頭,可是見女孩子就一身不自在,會(huì)解各式各樣的方 程,卻不能解決自己的困惑,碩士博士的路就在眼前,可是不知道還應(yīng)不應(yīng)該這樣走下去,這狀態(tài)難道就是我的追求?一個(gè)智商還不錯(cuò)的人努力多年就變成這樣?

             這是一個(gè)問題,很早就有了,只不過(guò)太晚地暴露出來(lái),我相信這樣的問題依然將被很多師弟師妹們面臨,我相信在清華依舊有很多像我當(dāng)年一樣的學(xué)生。當(dāng)看到他 們天真的討論: G 2***, 托 6**,GPA 3.*, 學(xué)校名次Top **, 仿佛幾年的辛勞就只為那么點(diǎn)數(shù)字,人生的終極標(biāo)就是goabroad. 我無(wú)法不為他們憂慮。這也是促使我寫這篇文章的主要原因。

            很多人沒有對(duì)做研究的真正興趣,但是用盡了精力去獲得一個(gè)去國(guó)外做科學(xué)研究的機(jī)會(huì),就洋溢在掩飾不住的喜悅里,甚至對(duì)人生毫無(wú)真正規(guī)劃,對(duì)自己的興趣一無(wú)所知,為出國(guó)而出國(guó),那將在告別父老鄉(xiāng)親后去迎接苦悶的開端。

             香港的學(xué)生很實(shí)際,決大多數(shù)本科畢業(yè)就去賺錢,三十之間為結(jié)婚買房奮斗,如果告訴一個(gè)香港人說(shuō)你二十八了還在讀博士,他會(huì)覺得你很失敗,可能是根本不會(huì) 賺錢。而留下來(lái)讀博士的香港學(xué)生,就是真的很喜歡作研究的人,扎實(shí)地做事,他們的認(rèn)真讓我們一批朝三暮四,心猿意馬的大陸學(xué)生汗顏。

            生活在香港
             都說(shuō)香港是彈丸之地,其實(shí)一千多平方公里的面積也不算小,不過(guò)大多是山,可利用的地方不多,很多商業(yè)區(qū)都是添海造出來(lái)的。亞熱帶的氣候,又在到處是山和 海灣的地方,風(fēng)景當(dāng)然好。香港的氣候比北京舒適一萬(wàn)倍,冬天冷不了,夏天也不太熱,甚至沒有明顯的四季感。只是上半年天氣有些潮。成天都有濕濕的感覺,北 方人有點(diǎn)受不了。

            香港的交通極其發(fā)達(dá),公共車從不擁擠,也很少堵車,可是香港的道路比北京的窄得多,車也不會(huì)少,布局和管理更好而 已,看來(lái)北京走向國(guó)際化還須努力。這里是名符其實(shí)的購(gòu)物天堂,東西也不算貴,電器和服裝可能比北京便宜,特別是國(guó)際名牌,由于沒有關(guān)稅,肯定要比大陸便 宜。所以不必帶很多衣服來(lái),足夠便宜了。但是服務(wù)業(yè),比如吃飯,理發(fā),涉及到員工勞動(dòng)和地租的就要比大陸貴好幾倍。可以隨便往來(lái)深圳也是在香港的一大好 處,一天可以輕松來(lái)回好幾次,在香港讀書的學(xué)生可一得到香港的臨時(shí)身份證,加上護(hù)照上蓋個(gè)章,就可以自由出入境了。

            常有人問及香港的影視明星,可是到了香港就覺得那些人也只是打工仔,背后是更有影響力的老板,一旦老板不想捧了,明星就會(huì)很快消失,新人會(huì)取而代之。看到他們賣力地載歌載舞,其實(shí)也是生存需要,在商業(yè)社會(huì)里那是絕對(duì)的驅(qū)動(dòng)力。

            香港的金融和資訊服務(wù)相當(dāng)發(fā)達(dá),在所謂第一世界里也算相當(dāng)突出,可以很便宜的享受到信用卡,電訊,互聯(lián)網(wǎng)服務(wù),因此有些人在香港呆久了再回來(lái)反而不適應(yīng)了,主要就是這些方面,當(dāng)然還有其他制度等軟件原因。

             說(shuō)到學(xué)校的生活,物質(zhì)條件比國(guó)內(nèi)任何大學(xué)好,甚至條件好過(guò)美國(guó)不少學(xué)校,香港的學(xué)生很少住宿學(xué)校,所以一到周末放假學(xué)校就很冷清。通常大陸學(xué)生獨(dú)享學(xué)校 設(shè)備,偌大電腦房和運(yùn)動(dòng)場(chǎng),舒服的游泳池,都有不少美好回憶。學(xué)生宿舍條件不錯(cuò),可以做飯,自己做比在餐廳里吃來(lái)的便宜,所以大陸學(xué)生會(huì)樂此不疲,周末常 三五成群,做吃的為樂。餐廳里中西餐都有,中餐以廣東口味為主,忙起來(lái)時(shí)以營(yíng)養(yǎng)為重,口味不對(duì)也只能將就吃了。

            現(xiàn)在在香港的大陸學(xué)生 不算多,總共有四五百人,各個(gè)學(xué)校都有學(xué)生聯(lián)誼會(huì),是比較松散的組織,也有一些機(jī)會(huì)認(rèn)識(shí)朋友。周末會(huì)組織放放電影,搞舞會(huì)。臨近考試或論文時(shí),誰(shuí)也沒心思 搞活動(dòng)。香港的學(xué)生很好打交道,在成熟的社會(huì)里長(zhǎng)大的人,心理相對(duì)簡(jiǎn)單且好玩,不像一些大陸學(xué)生常常過(guò)分盤算自己的明天,將自己逼的很累。他們對(duì)大陸也漸 漸感興趣,雖然他們常常不知道湖南和四川,只說(shuō)得上秦始皇和毛澤東。只要主動(dòng)點(diǎn)和他們交流,是可以結(jié)識(shí)不少朋友的,粵語(yǔ)不是障礙,很多人可以聽普通話,而 且,廣東話不難學(xué),不留神就長(zhǎng)進(jìn)不少。

            關(guān)于工作機(jī)會(huì)
            很多人就終于跳到北美去了,大多還是接著讀書,從這個(gè)意義上講,香港只是跳板。

            在香港留下工作的機(jī)會(huì)不多,如果在進(jìn)香港的第一天了解這一點(diǎn),是有好處的。也有回祖國(guó)的,我就是,所以我在這里寫文章了,看到很多朋友詢問去香港讀書的問題,作為過(guò)來(lái)人,就寫了這些,如果能給這些朋友提供一點(diǎn)有益的信息,就很滿足了。

             上次寫了文章發(fā)表在海外學(xué)子版,很多朋友給我回信,給了我很大的鼓勵(lì),真的沒想到過(guò)自己的東西會(huì)給別人帶來(lái)影響。留學(xué)的經(jīng)歷給了我很多,幾乎是一個(gè)脫胎 換骨的過(guò)程,在一篇文章里是不可能都講完的,所以我再寫一個(gè)續(xù)集,好萊塢搞續(xù)集純是為賺錢,我呢是什么都不圖,萬(wàn)一有ppmm看了之后找我,最爽不過(guò)。將 心底里的一點(diǎn)點(diǎn)“齷齪” 都暴露出來(lái),可以痛快講了。

            凡事都是虛空
            來(lái)自發(fā)展中國(guó)家的人,難免在神情上都多一絲生存緊張,中國(guó)在海外的留學(xué)生尤其讓人感覺到這一點(diǎn)。看不到出自內(nèi)心的笑,連談話時(shí)也似乎只有一個(gè)主題:今后有什么打算?每做一件事,都在問自己:對(duì)我有沒有好處?

             坦白的說(shuō)我自己剛到香港時(shí)就是這樣,只覺得自己多么沒著落,無(wú)根無(wú)底的飄在他鄉(xiāng),我要努力啊,絕不可浪費(fèi)自己的任何精力,房子,車子,名譽(yù),地位,還有 漂亮老婆,我什么都要啊。要學(xué)最能給我?guī)?lái)利益的東西,去做最有利自己的事情,直到我成功。當(dāng)時(shí)我就是這么典型功利,到現(xiàn)在我都想這樣痛罵自己。

             數(shù)學(xué)指出函數(shù)的極大值往往在最不穩(wěn)定的點(diǎn)取到,人追求極端就會(huì)失去內(nèi)心的平衡,到時(shí)候就不難體會(huì)到數(shù)學(xué)原理的深刻。我很快讓我的功利心理逼到無(wú)路可走 了,對(duì)所學(xué)的東西懷疑,擔(dān)心自己變成書呆子,對(duì)自己有信心,找不到真正的朋友,找不到讓身心平靜的樂趣,每天都在心潮起伏。最后我去找學(xué)生輔導(dǎo)員。愚蠢的 訴說(shuō)倒不多提了,不過(guò)我記得他大胡子的臉有了微笑,眼睛里放出寬容而溫和的光。他告訴我覺的我很有意思,他第一次遇到這么坦白的學(xué)生。“那些東西有什么意 義呢,你懷疑得很好。“之后就翻出圣經(jīng)來(lái),給我讀某些章。

            Everything is meaningless.竟是圣經(jīng)里的話語(yǔ)。那是我看到的最為震驚的一句話,也是我后來(lái)覺得最深刻的一句話。中國(guó)人很難理解,對(duì)在功利教育里熏陶過(guò)來(lái),缺 少人格教育的中國(guó)學(xué)生,更無(wú)異于晴天霹靂。成績(jī),offer, 學(xué)位,這樣那樣的好處,每天拼命算計(jì)的東西有什么意義?假設(shè)你突然死掉,世界將會(huì)怎樣?世界將一樣絢麗,地球轉(zhuǎn)的一樣快,太陽(yáng)系每天在宇宙中換一個(gè)位置。 大海還是大海,波濤還是波濤,一樣的花開花落,潮起潮落。你的親人可能會(huì)掉眼淚,但是周圍的人在三個(gè)月內(nèi)將你忘個(gè)干凈,那是你曾經(jīng)那么在乎他們?cè)趺纯茨愕?一群人啊。如果上帝存在,在他的眼里,你是多么可憐的小蟲子,在活著的短暫歲月里,在最美好的青春里,都不曾快樂過(guò),用盡心力去聚集一大堆外在和心靈沒有 關(guān)系的小東西,只是出于對(duì)未來(lái)的沒有信心,小小的心靈在接近熄滅的一天還在發(fā)出那個(gè)愚蠢的聲音,讓你忙碌,讓你憂慮的聲音:我要,我還要。天底下充滿了這 樣的小蟲子,當(dāng)一個(gè)離開了,又有一個(gè)來(lái)了,做著同樣的事情,洶涌著同樣的小小念頭,受著同樣的煎熬。于是上帝要感慨了:虛空的虛空,凡事都是虛空。已有的 事,后必再有;已行的事,后必再行。日光之下,并無(wú)新事。
            已過(guò)的世代,無(wú)人紀(jì)念;將來(lái)的世代,后來(lái)的人也不紀(jì)念。
                                                      ------圣經(jīng) 舊約 傳道書
            我不是在傳教,當(dāng)時(shí)的輔導(dǎo)員也不是在傳教,但是讓我立刻看到自身的渺小,物質(zhì)追求的虛妄,內(nèi)心的愚昧。看看資本主義的學(xué)生輔導(dǎo),是不是比我們這邊高明多了?馬哲曾幫助過(guò)我們什么?

            不要憂慮
            “不要為明天憂慮,天上的飛鳥,不耕種也不收獲,上天尚且要養(yǎng)活它,田野里的百合花,從不憂慮它能不能開花,是不是可以開得和其它一樣美,但是它就自然的開花了,開得比所羅門皇冠上的珍珠還美。你呢,憂慮什么呢?人比飛鳥和百合花貴重多了,上帝會(huì)棄你不顧嗎?”
            一個(gè)朋友告訴我,他在等美國(guó) offer 的時(shí)候,常常夢(mèng)到接到牛校offer, 過(guò)度興奮到醒,更為郁郁,感慨“但愿長(zhǎng)醉不復(fù)醒”。這樣的故事大家聽了不會(huì)太驚詫,由此不難理解《儒林外史》中的進(jìn)中舉了。而得到offer的人到了海外,往往要經(jīng)歷更多的夢(mèng)醒時(shí)分。

            為什么活得這么累?生命本是如此美麗,連飛鳥和野花都可以盡情地享受上天的恩賜,而這些有高等思維的聰明人,卻活活讓思維搞得神情郁郁,哀聲嘆氣。
             常有人感嘆西方人笑起來(lái)那么真實(shí),那么出自內(nèi)心,探討起來(lái),又歸結(jié)到他們更有錢,他們的社會(huì)更發(fā)達(dá)。可我覺得那不是原因。原因就是他們比中國(guó)學(xué)生更接近 飛鳥和野花罷了,更接近《阿甘正傳》里的弱智罷了。他們更天真,相信那個(gè)萬(wàn)能的上帝會(huì)永不遺棄他,所以他們可以少想很多的問題,反而過(guò)得更順利,在團(tuán)隊(duì)里 表現(xiàn)得更凝聚,因?yàn)檫^(guò)分的私心是無(wú)法向大家共同的上帝交代的,他們可以很快做出一個(gè)Microsoft,一個(gè)Dell,但是大家可以看看中國(guó)的北大方正, 聯(lián)想,新浪,管理層一年的地震比臺(tái)灣還多, 這么多年來(lái),連沖出亞洲的野心都沒有真正實(shí)現(xiàn)過(guò)。 這難道不是上帝給西方人帶來(lái)的好處,耶穌說(shuō)信我就可以得救,不管這個(gè)上帝是不是虛擬的,但他在事實(shí)上填補(bǔ)了人性的巨大空白,人家的Microsoft就證 明了他的存在,正如計(jì)算機(jī)的虛擬內(nèi)存,盡管虛擬,但事實(shí)上的作用是巨大的。中國(guó)學(xué)生總是懷疑這個(gè)看不見的上帝是否存在,更在私下里說(shuō),他對(duì)我能帶來(lái)好處 嗎?其實(shí)中國(guó)人什么都不信,只信好處,從古時(shí)的考八股起,讀書就是為了好處。因此,大家每天活在害怕沒有好處的憂郁里,想靠自己小小的思維,在著巨大的世 界系統(tǒng)里去謀取好處,上帝忍了淚水,背過(guò)臉去。

            思維的無(wú)奈
             我并不主張?zhí)摕o(wú),盡管我在上一篇文章里盡力去指出物質(zhì)追求的虛妄。正如薩特認(rèn)為,人生本是本無(wú)意義,但是怎樣擺脫虛無(wú)卻是有意義的。王朔的意義在于砸碎 那些沒有意義的假崇高,伍迪.艾倫的意義就在于不斷指出人生的荒謬。如果一切都是那么可笑,我們?cè)鯓用鎸?duì)每天的24小時(shí)?但是活著就是這么簡(jiǎn)單,它只是一 個(gè)過(guò)程,簡(jiǎn)單而自然地發(fā)生,以至于任何干擾和關(guān)注都是多余。就像飛鳥掠過(guò)天空,野花靜靜地開放。能把什么東西叫做現(xiàn)在嗎?你能占有什么東西嗎?一切的意義 只在時(shí)間的流動(dòng)的河中。就像一團(tuán)火,哪個(gè)燃燒的過(guò)程才叫火,一旦過(guò)程停止了,火不存在了。人的思維在作怪,它是一個(gè)雙面的東西,它不總是帶給我們好處,雖 然我們對(duì)它有那么多自信。思維在很多時(shí)候嚴(yán)重地干擾了那個(gè)自然的生命過(guò)程,它在想單個(gè)的狀態(tài)好不好,值不值得,合不合規(guī)范,能給自己帶來(lái)什么,所以我們很 快變得不快樂,不安穩(wěn),再也無(wú)法享受那種自然的喜悅了,正像被攝像的人,他的表情立刻不自然起來(lái)。恐怖片里的鬼魂可能一直不曾出現(xiàn),人們卻開始牙齒打顫, 是被自己思維折磨而已。學(xué)計(jì)算機(jī)的朋友肯定知道操作系統(tǒng)將一個(gè)進(jìn)程懸掛起來(lái)的意思。人的那個(gè)蠢笨不堪的思維,憑什么要常駐內(nèi)存?它那么長(zhǎng)期的運(yùn)轉(zhuǎn),又真正 解決了多少問題?為什么不在必要的時(shí)候懸掛它,去享受生命的自然?明白這一點(diǎn)將改變你的生活,思維會(huì)使你陷入矛盾,很多時(shí)候它是多余的,用心去體會(huì),甚至 用毛孔去感受就足夠了。當(dāng)你不再判斷,不再分辨,不再比較,不再權(quán)衡,你就立刻、和諧起來(lái)。“采菊東籬下,悠然見南山”。那時(shí),還用考慮什么呢?“此間有 真意,欲辯已忘言”,連言語(yǔ)都是多余,因?yàn)檠哉Z(yǔ)來(lái)自思維。佛陀的捻花一笑,詳和的神情,雖靜坐,似乎已飛躍世間一切,他坐在了那個(gè)生命的根本之上, 再也沒有一絲的不和諧。

            讀書的時(shí)候,我常常到海邊聽濤聲,坐下來(lái)看著太陽(yáng)落下,那會(huì)是我一天最美好的時(shí)間,當(dāng)太陽(yáng)沒下去,晚霞漸漸褪 去顏色,波浪依然輕輕拍打岸邊,幕色從四周將我圍過(guò)來(lái),靜默中我會(huì)在心靈里升起喜悅,感覺到冥冥中那個(gè)永恒的力量,它在緊緊將我抱住,天地萬(wàn)物和我一樣同 在,也被溫和地抱著,我將永不孤獨(dú),永不傷心,永不絕望,因?yàn)槟橇α烤鸵恢痹谀抢铮瑢⒂肋h(yuǎn)在那里,我是它的恩賜,我的靈魂從未像那時(shí)一樣枝繁葉茂,內(nèi)心從 未像那時(shí)一樣寧?kù)o和諧。

            我不用去分辨那種力量,是上帝也好,上天也好,老子說(shuō)的道也好,有什么關(guān)系呢?分辨只是是思維常干的蠢事罷 了。所有的心靈都是一樣的,所以我相信所有人都有那個(gè)和諧的狀態(tài),就像收音機(jī)有那個(gè)頻道一樣,只不過(guò)太多人沒有調(diào)到過(guò)。太陽(yáng),大海,清風(fēng)明月,鳥語(yǔ)花香, 生生不息的物種,是多么大的恩賜啊,只在我們斷暫的生命里才可以感受到,可是太多的人從不念及。他們將自己全部地交給了少得可憐的腦細(xì)胞,心靈交給了那個(gè) 拙劣的 CPU,時(shí)時(shí)刻刻在做狹窄不堪的運(yùn)算和判斷,所以才會(huì)長(zhǎng)時(shí)間掙扎焦慮,只看到85分和90分的區(qū)別,5000元月薪和10萬(wàn)年薪的不同,牛校和爛校的分 辨。所以“郁悶”,“無(wú)恥”,“倒霉”,“不爽”,“急”,這樣的詞匯就開始在嘴邊泛濫了,就像破電腦的出錯(cuò)提示一樣多。

          本沒有打算再寫很多了,關(guān)于人生的刨根問底本來(lái)就是沉重的課題,無(wú)異讓學(xué)業(yè)繁多的學(xué)子們?cè)賾岩勺约海教響n慮。倒不如多說(shuō)點(diǎn)逗樂的事,每天多嘻嘻哈哈一陣。
          前 不久見到北大的一個(gè)女生,說(shuō)我前面介紹香港的文字很實(shí)用,后面的文章就越來(lái)越看不懂了,可以理解,并不是所有的人都要像我一樣想這些問題的,特別是女孩, 一天多說(shuō)幾聲“挺好的”“好溫馨喲”就算過(guò)得不錯(cuò)了,古今中外都不曾出過(guò)一個(gè)女哲學(xué)家。但是,這位未曾謀面的北大師弟在等我的續(xù)集,謝謝你,xmdl(阿 扁魚), 我不愿讓你失望這一篇是為你而寫的。

            我們看的人文書前面提到的女生就問我,在留學(xué)過(guò)程中最大的收獲是什么,我回答是長(zhǎng)了見 識(shí)。就像在小地方呆久的人出來(lái)見了大海,這個(gè)收獲大得很。所以我漸漸地學(xué)會(huì)了真正的謙虛態(tài)度,越來(lái)越承認(rèn)自己所可以理解到的,可以認(rèn)識(shí)到的只是這世界的太 小一部分。在我的腦力范圍外有太大的空間,從這一點(diǎn)來(lái)看,我們每個(gè)人都對(duì)自己有過(guò)多的自負(fù),每天都在或多或少的干著作井觀天的蠢事,爭(zhēng)論著盲人摸象的爭(zhēng) 論。

            清華北大的學(xué)生的人文素養(yǎng),我想,很多來(lái)源于圖書館的人文書籍,因?yàn)橄矚g讀書的學(xué)生多半在那里搬書回來(lái)看。可是那些書多產(chǎn)于七 十,八十年代,基本上是被一把姓馬的刀閹割了的太監(jiān)式的書,我不怕得罪人。怎么閹割法?舉個(gè)例子,“總體而言,宗教是唯心的,錯(cuò)誤的世界觀,被統(tǒng)治階級(jí)利 用來(lái)麻痹被統(tǒng)治階級(jí)的廣大人民...”從此,你知道了這一點(diǎn),你么讀釋迦,讀耶穌,讀老莊,都覺得如同太監(jiān)一般陰陽(yáng)怪氣。在紅色的年代里,馬刀所向無(wú)敵, 包括孔夫子到孫中山,從曾國(guó)藩到蔣介石,都少有可以逃脫的,因?yàn)樗麄冇?#8220;階級(jí)局限性”。

            但是我到了香港,就看到了很多臺(tái)灣的書,很多 香港的書,原來(lái)這些書本不象太監(jiān)的,甚至不比姓馬的書少陽(yáng)剛之氣,可以讀得讓人忘食,哎,可憐它們的被閹。這些都是我以前腦子以外的東西,所以我立刻知道 要謙虛了,人總是受著他的經(jīng)歷和環(huán)境的巨大局限,他甚至不意思到,沒有選擇地被限制隔離著。

            耶穌呢,用我們的眼光看,他太失敗了,沒有妻子,沒有兒子,沒有房子,沒有財(cái)產(chǎn),沒有地位,最后還要被釘死,他只是游走于四方去救助受苦受難的人們,他有余的眼光總是看到了世界的外面,因?yàn)樗驳竭^(guò)更高的維度里。

             莊子至今看來(lái)還是活得最浪漫最灑脫的中國(guó)人,他是超脫的同義詞,他也是高維空間的螞蟻。去讀他們,去體會(huì)那種來(lái)自另外一個(gè)維度的智慧的震撼,盡管你可能 無(wú)法改變無(wú)奈的現(xiàn)實(shí),但是可以深刻地改變自己,盡管無(wú)法擺脫沉重的肉身,依舊無(wú)選擇地活在平面上,但是,心靈獲得了自由。愿意升起你的心靈嗎?

             每個(gè)人都是獨(dú)一無(wú)二的,而且我們永遠(yuǎn)只能是自己,盧梭說(shuō)的,對(duì)于整個(gè)世界我微不足道,但是我對(duì)于自己確是全部。事實(shí)上我們只對(duì)于自己重要,如果我死掉 了,沒有幾個(gè)人會(huì)在三年后保持對(duì)我的記憶,如果我痛苦,沒有幾個(gè)人會(huì)有真正的同情,因?yàn)樘y了,每個(gè)人都無(wú)法了解我的意識(shí)。所以我們要獨(dú)立,活著就是成為 自己,那個(gè)獨(dú)一無(wú)二的自己,去尋找自內(nèi)在的完美與和諧,去實(shí)現(xiàn)句那沒有選擇的話: I am who I am。

            Simply because I am not and can not beanyoneelse.可是我們受教育,教育的目的就是教我們忘掉自己,去變成一個(gè)稱為標(biāo)準(zhǔn)的人,不是這樣嗎?從小學(xué)起我們就要評(píng)三好,樹標(biāo)兵,學(xué)雷 鋒,學(xué)賴寧。老師總是看到我們的惡習(xí),“你那樣子不合行為規(guī)范,不可恥嗎?”到了大學(xué),我們又自由了多少呢?我們依舊看別人,看典型,看所謂成功者,我們 依舊活在要忘掉自己的標(biāo)準(zhǔn)包圍中,去bbs看看,似乎所有人都統(tǒng)一了口吻,GRE 2400,拿了牛校offer, 簽了著名外企,找到了ppmm,牛啊,羨慕啊,爽啊,歷史走到了21世紀(jì),北大和清華人只剩下一副面孔了,每年招了很多新生,最后就剩下了一個(gè)。

             比較是有意義的嗎?作為一個(gè)獨(dú)一無(wú)二的存在,作為自己的全部主宰,為什么要什么都和人家比才可以找到意義?為什么當(dāng)別人考G的時(shí)候,我也一定要考,為什 么考不過(guò)2200就要郁悶?為什么billgates成功的時(shí)候,我也一定要學(xué)計(jì)算機(jī)?可是自己和別人是多么的不同,些不同難道可以在一些欲念的驅(qū)動(dòng)下輕 易的忽略?

            崇拜是有意義的嗎?明星是需要那樣追捧的嗎?中國(guó)的那支爛球隊(duì)是需要那么多關(guān)注的嗎?

            當(dāng)我們傾注希望的時(shí)候,他們借此賺到了更多的銀子,活得更加囂張,更加讓我們失望,我們是在給富翁們獻(xiàn)愛心,愛心那么多,為什么不獻(xiàn)給需要愛心的更多的人們,為什么不獻(xiàn)給自己,獨(dú)一無(wú)二的自己?

             當(dāng)我們崇拜自己,熱愛自己,追捧自己,關(guān)注自己,我們就都也是明星了。這樣盲從將無(wú)法發(fā)生,起哄將無(wú)法發(fā)生,個(gè)人崇拜將無(wú)法發(fā)生。這個(gè)意義大的很,至少 大躍進(jìn)將不發(fā)生,文革將不發(fā)生,我們的經(jīng)濟(jì)有可能早三十年走上正軌,現(xiàn)在我們不需要拼命飛躍重洋,中央到地方的官員就不要象現(xiàn)在一樣,在億萬(wàn)人沒有工作時(shí) 還竭力吹噓7%的GDP增長(zhǎng),就像陽(yáng)痿的人,為了臉面,鄭重地去聲名:請(qǐng)看我濃密的胡須,年增長(zhǎng)率7%。
                  不知道多少人可以耐心有共鳴的看完這個(gè)帖子,但是看完后卻激動(dòng)的想向每個(gè)好朋友推薦。關(guān)于人生的追求、香港的開明及其他、大陸人被蒙蔽太久、海外學(xué)習(xí)生活 的好處和收獲、是否出國(guó)以及為了什么出國(guó),好多好多曾經(jīng)是我想過(guò)滴為之郁悶過(guò)滴,幸好有留美歸來(lái)的老師點(diǎn)撥,有Joe的嚴(yán)厲“質(zhì)問”,才讓我度過(guò)了當(dāng)初的 掙扎和煎熬,如今的心境已經(jīng)遠(yuǎn)離那種浮躁和焦灼了。因?yàn)閷W(xué)會(huì)欣賞不同的美,懂得珍惜和付出,因此每一天都很開心。這一篇帖子真的是讓我看到絢爛浮躁下面自 己真正缺少什么,好好珍藏!有機(jī)會(huì)還是要出去看看好好體會(huì)。(轉(zhuǎn)帖原文附帶,未刪除)

          posted @ 2014-03-27 07:58 ZT文萃 閱讀(174) | 評(píng)論 (0)編輯 收藏

          以下網(wǎng)文屬于無(wú)責(zé)任轉(zhuǎn)載,讀者自辯真假。

          趣1024:分享有趣、一級(jí)棒的圖和事。

              故事主角
              劉立榮,湖南益陽(yáng)人,金立通訊集團(tuán)董事長(zhǎng)兼總裁,身家15億,手機(jī)月均銷量45萬(wàn)部,年銷售量超500萬(wàn)部,集團(tuán)年利潤(rùn)超3億。
              李盛,湖南新化人,劉立榮的大學(xué)同窗,現(xiàn)為上海一電子公司的技術(shù)員,月收入5000元。同窗好友。李盛與劉立榮原本是最要好的大學(xué)同窗,也是一對(duì)當(dāng)初同闖 廣東,同住一間宿舍,沒錢時(shí)一同挨餓的患難兄弟。然而,10多年過(guò)去,這兩個(gè)興趣相投、愛好相近的患難兄弟,其命運(yùn)為什么會(huì)產(chǎn)生如此大的落差呢?近日,筆 者專訪了李盛,從他的反思中找到了一個(gè)令人感悟猶深的原因……

              4年同窗,最煩就是他喜歡“小題大做”李盛曾經(jīng)十分看不慣大學(xué)同學(xué)劉立榮在小事上總是太較真,但他萬(wàn)萬(wàn)沒有想到,正是這種差別,使得劉立榮如今成了身家15億的大老板,而自己卻仍然是月薪不過(guò)5000元的普通職員!
              李盛是湖南省新化縣人。1990年9月,他考取了校址在長(zhǎng)沙市的中南工業(yè)大學(xué)。那天辦完報(bào)到手續(xù)回到宿舍時(shí),看到一個(gè)同學(xué)正埋頭獨(dú)自下圍棋,他便說(shuō):“兄 弟,我們來(lái)兩盤行嗎?”同學(xué)答應(yīng)了,與他一邊下棋一邊聊天。通過(guò)交談,李盛得知這位新同學(xué)叫劉立榮,來(lái)自益陽(yáng)市農(nóng)村。那天下午,他倆共下了3盤,李盛輕松 地全贏了。
              此后,同宿舍的他倆經(jīng)常在課余下棋、聊天。剛開始,李盛棋藝占優(yōu),劉立榮從沒贏過(guò)。但是,劉立榮每次下棋時(shí)都認(rèn)真思考,李盛卻認(rèn)為下棋就是打發(fā)時(shí)間,總漫 不經(jīng)心。這樣一個(gè)學(xué)期下來(lái),劉立榮的棋藝居然反過(guò)來(lái)比李盛高出一大截,能讓他3子了。李盛很納悶地問:“你怎么提高得這么快?”劉立榮說(shuō):“你下棋根本不 思考,怎么能有進(jìn)步……”
              大二第二學(xué)期,為了賺取生活費(fèi)用,劉立榮提出利用晚自習(xí)后的時(shí)間,到各個(gè)男生宿舍去賣牛奶和面包。兩人進(jìn)行了分工,李盛負(fù)責(zé)去三、四棟男生宿舍推銷,劉立 榮則負(fù)責(zé)五、六棟宿舍。剛開始,兩人每晚都能賺六七元錢,可不久劉立榮的錢越賺越多,李盛卻越賺越少。李盛不服氣,可兩人調(diào)換推銷宿舍后,劉立榮每晚還是 能多賺七八元錢,而李盛依然越賺越少。一天,劉立榮看到李盛穿著一身汗透了的球衣,抱著食物箱就準(zhǔn)備出門,他才恍然大悟地說(shuō):“你太不注意細(xì)節(jié)了。像你這 樣臟兮兮的,誰(shuí)敢買你的食品呀?”李盛此后聽從了劉立榮的建議,每晚出門前將自己收拾得干干凈凈,一段時(shí)間后,他的“生意”果然漸漸好了起來(lái)。
              這件事后,李盛有些佩服劉立榮注意細(xì)節(jié)的優(yōu)點(diǎn)了。此后,李盛學(xué)習(xí)很用功,大三時(shí)還拿到了800元的一等獎(jiǎng)學(xué)金,而劉立榮卻因?yàn)槠綍r(shí)愛鉆研圍棋,又喜歡看經(jīng) 濟(jì)管理類的課外書籍,學(xué)習(xí)成績(jī)不過(guò)中等。但令李盛想不到的是,大學(xué)畢業(yè)分配時(shí),盡管劉立榮專業(yè)成績(jī)并不出色,但卻有3家單位爭(zhēng)著要連學(xué)生推薦表都填得一絲 不茍的劉立榮。最后,劉立榮選擇了去天津有色金屬研究所,而學(xué)習(xí)成績(jī)好的李盛好不容易才將工作落實(shí)在長(zhǎng)沙前動(dòng)力機(jī)車廠。
              雖然分隔兩地,但他倆經(jīng)常聯(lián)系。李盛覺得劉立榮分配到了研究單位,一定非常滿意。哪想到1995年3的一天,劉立榮來(lái)到長(zhǎng)沙找到李盛,說(shuō):“兄弟,我已經(jīng) 停薪留職,準(zhǔn)備去廣東了。你和我一起去吧!不然,年齡一大,歲月就沖淡了創(chuàng)業(yè)激情,到時(shí)就沒有闖勁了……”李盛聽了,也熱血沸騰,當(dāng)即答應(yīng)一起闖廣東。

              南下淘金
              第二天,李盛便辦理了停薪留職手續(xù)。1995年3月30日,兩個(gè)同窗好友坐上了南下的火車……
              郁悶:做事“差不多”的我只能當(dāng)下屬。兩人到了廣州后,半個(gè)月過(guò)去,卻沒找到合適的工作,劉立榮建議去中山市。誰(shuí)知到了中山市一個(gè)星期,兩人身上僅剩下兩元錢了,還是沒找到工作。
              他倆去中山小霸王電子智能科技公司應(yīng)聘技術(shù)員。出門前,李盛不慎碰翻水杯,將兩人的簡(jiǎn)歷浸濕了。他們將簡(jiǎn)歷放在電風(fēng)扇前吹吹后,李盛把簡(jiǎn)歷和其他一些東西 放進(jìn)了包里,就連連催劉立榮快走。可劉立榮卻將簡(jiǎn)歷夾進(jìn)一本書里,又認(rèn)真地壓平整,才雙手將書捧在胸前出門。李盛不由埋怨說(shuō):“你真磨蹭!”

              到了小霸王公司的招聘現(xiàn)場(chǎng),負(fù)責(zé)招聘的副總經(jīng)過(guò)交談,對(duì)他倆良好的專業(yè)知識(shí)很滿意。然而,當(dāng)他們遞上簡(jiǎn)歷時(shí),李盛的簡(jiǎn)歷不僅有一片水漬,且放在包里一揉, 加上鑰匙的劃痕,已經(jīng)不成樣子了。那位副總不由皺了皺眉頭。到了下午,劉立榮被通知去面試,并且應(yīng)聘成功。沒得到面試機(jī)會(huì)的李盛急得快哭了!劉立榮便說(shuō): “我們?nèi)枂柊桑?#8221;當(dāng)他們?cè)儐枙r(shí),那位副總馬上反問李盛:“你連自己的簡(jiǎn)歷都沒能力保管好,我怎能相信你工作上的能力?”一旁的劉立榮斗膽說(shuō):“他是我同 學(xué),專業(yè)如識(shí)比我過(guò)硬,既然你相信我,也應(yīng)該相信他……”李盛這才得到了面試的機(jī)會(huì)。好在面試時(shí)表現(xiàn)不錯(cuò),李盛最終也和劉立榮一樣被小霸王公司聘為技術(shù) 員。
          上班后,兩人又同住一間宿舍,一同上下班,一起吃飯,一起抽7元錢一包的紅雙喜香煙,甚至湊錢買了一套羅蒙西服輪流穿,工作上也互相幫忙。 1995年6月底,技術(shù)主管讓他倆各自設(shè)計(jì)一套程序。李盛憑著過(guò)硬的專業(yè)知識(shí),一個(gè)晚上就完成了。次日上午,他在宿舍里美美地睡了一覺,下午一進(jìn)辦公室, 發(fā)現(xiàn)雙眼充滿血絲的劉立榮仍在埋頭查資料,他便說(shuō):“你還愛磨蹭!我來(lái)幫幫你吧!”在他的幫助下,劉立榮下午也完成了設(shè)計(jì)。李盛說(shuō):“差不多了,休息 吧。”說(shuō)完,他便又回到宿舍睡覺去了。
              李盛離開后,已經(jīng)兩天一夜沒睡覺的劉立榮又將程序檢查了好幾遍,即便覺得沒有瑕疵了,他還是將圖重新謄寫了一遍,直到自己滿意才罷休。第二天,技術(shù)主管看 了圖紙后,說(shuō):“從你們交上來(lái)的圖紙看,小李的專業(yè)基礎(chǔ)很扎實(shí),可圖紙潦草、臟亂,對(duì)工作太毛躁了;小劉的圖紙一絲不茍,做事踏實(shí),令人放心……”李盛不 服氣地想:圖紙你看得懂不就行了,干嗎非要清潔干凈不可?真是吹毛求疵!
              不久,為了制圖方便,技術(shù)部準(zhǔn)備更換一臺(tái)新電腦,需要由他們?cè)趫?bào)告上簽名。報(bào)告寫好后,李盛大筆一揮,將自己的名字簽得老大。劉立榮提醒說(shuō):“你的簽名這么大,領(lǐng)導(dǎo)的名字往哪里寫?再重新寫一份報(bào)告吧。”李盛卻說(shuō):“你太小題大做了吧?他們隨便簽在哪不行嗎?”
              1995年10月底,技術(shù)部一臺(tái)車床起動(dòng)時(shí),起落架無(wú)法收回,導(dǎo)致無(wú)法運(yùn)轉(zhuǎn)。主管技術(shù)的副總檢查后,發(fā)現(xiàn)原來(lái)是起落架上的插銷沒有拔出。故障排除后,劉立 榮寫了一份標(biāo)準(zhǔn)操作規(guī)范貼在機(jī)器上,不但寫清不要忘記拔插銷,而且對(duì)插銷要怎么拔,拔出后后退幾步,放在何處,都寫得清清楚楚。李盛不屑地說(shuō):“你這不是 多此一舉嗎?大家有了教訓(xùn),應(yīng)該已經(jīng)記在心里了。”然而,副總來(lái)檢查工作時(shí),看到這張注意事項(xiàng),高興地說(shuō):“寫得好,如果都像你一樣,留下注意事項(xiàng),新員 工就會(huì)避免犯同樣的錯(cuò)誤了。”

              差距初現(xiàn)

              看到劉立榮對(duì)工作如此細(xì)心,李盛還是不屑地認(rèn)為:你將自己累得要死,還不是和我領(lǐng)著同樣的工資,何苦呢?然而,1996年11月,技術(shù)部主管辭職后,公司 領(lǐng)導(dǎo)認(rèn)為劉立榮辦事認(rèn)真細(xì)致,經(jīng)手的事很少出錯(cuò),于是將專業(yè)知識(shí)不如李盛的劉立榮提拔為技術(shù)主管,而給李盛只是象征性地漲了200元工資。
            1997年10月,公司為了鼓勵(lì)劉立榮,分給他一套兩室一廳的房子。為他搬家的那天,李盛心里很失落:才進(jìn)公司兩年,他怎么就成了我的上司了呢?
              如今他身家15億,我月薪5000元
              1998年4月,小霸王公司副總裁楊明貴準(zhǔn)備去東莞,自己組建金立數(shù)碼科技有限公司。他將自己一直賞識(shí)的劉立榮帶到了東莞,擔(dān)任副總。在劉立榮的推薦下,楊明貴也將李盛帶到了東莞,擔(dān)任技術(shù)部主管。
              在新公司做了技術(shù)主管后,李盛工作輕松了很多。因此,他晚上常去當(dāng)?shù)氐木瓢伞⑾茨_城娛樂。有一個(gè)周六下班后,劉立榮叫住了他,說(shuō):“老弟,好久沒下棋了, 我們來(lái)幾盤吧?”晚上9點(diǎn)多鐘,他們下棋正在興頭時(shí),劉立榮接到了一個(gè)客戶的電話,他馬上就說(shuō):“今晚到此為止了,我得去廣州接一個(gè)重要的客戶……”李盛 不解地說(shuō):“這么晚了還去廣州接人?沒必要吧!”劉立榮卻說(shuō):“如果接他,在這個(gè)小細(xì)節(jié)上讓客戶滿意,能給公司帶來(lái)效益,我有什么理由不去做呢?”
              2000年3月,劉立榮在審查由李盛寫的生產(chǎn)流程報(bào)告時(shí),發(fā)現(xiàn)報(bào)告上居然將200元寫成了200萬(wàn)元。他生氣地說(shuō):“你怎么能這樣不小心呢?如果我沒檢查 出來(lái),誰(shuí)負(fù)得起這個(gè)責(zé)任?工作不能馬虎啊,你換位思考一下,如果你是老總,你能將工作放心地交給出現(xiàn)這樣錯(cuò)誤的員工嗎?”
              盡管李盛對(duì)劉立榮的話點(diǎn)頭稱是,但心里仍不以為然。2000年5月的一天晚上,劉立榮一邊與李盛下棋時(shí),一邊打電話對(duì)公司文員再三叮囑:“從東莞去廣州, 你一定要給他買靠右邊窗口的車票,這樣他坐在車上就可以看到鳳凰山;如果他去深圳,你就要給他買左邊靠窗的票……”李盛不解地問:“到底接待誰(shuí)呀,你這樣 婆婆媽媽?”劉立榮說(shuō):“臺(tái)灣順翔公司的楊總,他出門時(shí)不喜歡坐汽車而喜歡坐火車。這樣,他一路可以欣賞鳳凰山的風(fēng)景。”李盛笑道:“這些小事你也裝在心 里,累不?”可令他沒有想到的是,這件小事競(jìng)給公司帶來(lái)了2000萬(wàn)元的業(yè)務(wù)。
              原來(lái),4個(gè)月后,臺(tái)灣的楊總在和劉立榮聊天時(shí),無(wú)意中問起這個(gè)問題。劉立榮說(shuō):“車去廣州時(shí),鳳凰山在您的右邊。車去深圳時(shí),鳳凰山在您的左邊。我想,您 在路上一定喜歡看鳳凰山的景色,所以替您買了不同的票。”楊總聽了大受感動(dòng),說(shuō):“真想不到,你們居然這么注重細(xì)節(jié),和你們合作,可以讓我放心了!”楊總 當(dāng)即將本已決定交給別的公司的2000萬(wàn)元訂貨單,改交給了劉立榮。李盛聽說(shuō)此事后,心里也很震撼!
              2001年10月,金正數(shù)碼公司發(fā)展為集團(tuán)公司,劉立榮也升任集團(tuán)公司副總裁。可不久,李盛卻給公司帶來(lái)了莫大的損失:生產(chǎn)部按技術(shù)部新開發(fā)的模具生產(chǎn)出 樣品后,才發(fā)現(xiàn)模具設(shè)計(jì)居然出了問題,本該在右邊的零件被設(shè)計(jì)到了左邊,一條價(jià)值400多萬(wàn)元的生產(chǎn)線全報(bào)廢了。董事長(zhǎng)得知后大發(fā)雷霆,做出了取消技術(shù)部 所有員工年終獎(jiǎng)、直接開除事故責(zé)任人李盛的處分決定。劉立榮忙向董事長(zhǎng)求情,董事長(zhǎng)最后雖然收回成命,但還是撤了李盛的職務(wù),讓他當(dāng)普通的技術(shù)員。
              幾天后,李盛找到劉立榮,說(shuō):“我知道你對(duì)我好,但我不能拖累你,我還是離開公司……”劉立榮不好強(qiáng)加挽留。離開金正數(shù)碼公司后,李盛在東莞市虎門鎮(zhèn)興利電子公司找到了一份做技術(shù)開發(fā)的工作。
          不同的命運(yùn)
              2002年7月的一天,李盛與劉立榮在虎門鎮(zhèn)相遇。劉立榮告訴李盛,自己準(zhǔn)備辭職,籌資成立一家屬于自己的通訊設(shè)備公司,并邀李盛和他一起干,可李盛搖了搖頭,說(shuō):“我已經(jīng)買了房子,不想再奔波了……”
              此后,劉立榮招兵買馬,創(chuàng)建了金立通訊有限公司。一晃7年過(guò)去,李盛仍只是一個(gè)技術(shù)員,依然抽著7元錢一包的紅雙喜香煙,擠公交車上下班;而劉立榮貴為金立集團(tuán)的總裁,開著奔馳600轎車,成了億萬(wàn)富翁。
              2009年3月,興利電子公司由于受金融風(fēng)暴的影響破產(chǎn)了,李盛只得到深圳另找工作。此時(shí),劉立榮的金立集團(tuán)已成為國(guó)內(nèi)手機(jī)企業(yè)的重要品牌,他自己身家 15億。李盛想過(guò)請(qǐng)昔日的哥們劉立榮幫助自己謀一份職位,卻又覺得沒臉相求。2009年9月,他在上海的一家電子公司重新找到了工作,月薪5000元。
              接受采訪時(shí),李盛反省說(shuō):“以前,我總覺得劉立榮職務(wù)扶搖直上,事業(yè)飛黃騰達(dá),是一種偶然和幸運(yùn);我現(xiàn)在才明白,他是因凡事注意細(xì)節(jié),不斷進(jìn)步。細(xì)節(jié)決定命運(yùn)啊!”
              細(xì)節(jié)決定命運(yùn),李盛的反思確實(shí)有道理!無(wú)論在生活中,還是在工作上,是否能夠注重細(xì)節(jié),絕對(duì)影響著我們每個(gè)人的命運(yùn)。年少時(shí)同樣高矮的伙伴,每個(gè)月可能只 會(huì)比自己高一毫米,差距毫不起眼,可十年八年后,他可能就會(huì)長(zhǎng)成巨人,而自己卻形同侏儒。劉立榮的成功,肯定是因?yàn)樗泻芏鄡?yōu)點(diǎn),但他在職場(chǎng)從起步到成為 老總這個(gè)人生最重要的跨越階段,注意細(xì)節(jié),絕對(duì)是他贏取人生每一步的重要原因。因?yàn)椋⒅丶?xì)節(jié)不僅僅是一種習(xí)慣,更是一種高級(jí)職業(yè)精神,它能引領(lǐng)你不斷完 善自己的人格和能力,一步步走向成功!劉立榮的成功經(jīng)驗(yàn),值得我們每個(gè)職場(chǎng)新人學(xué)習(xí)和深思!

          posted @ 2014-03-25 08:35 ZT文萃 閱讀(183) | 評(píng)論 (0)編輯 收藏

          http://www.cnblogs.com/benio/archive/2010/10/13/1849946.html


          當(dāng)磁盤大小超過(guò)標(biāo)準(zhǔn)時(shí)會(huì)有報(bào)警提示,這時(shí)如果掌握df和du命令是非常明智的選擇。

              df可以查看一級(jí)文件夾大小、使用比例、檔案系統(tǒng)及其掛入點(diǎn),但對(duì)文件卻無(wú)能為力。
              du可以查看文件及文件夾的大小。

              兩者配合使用,非常有效。比如用df查看哪個(gè)一級(jí)目錄過(guò)大,然后用df查看文件夾或文件的大小,如此便可迅速確定癥結(jié)。

              下面分別簡(jiǎn)要介紹

              df命令可以顯示目前所有文件系統(tǒng)的可用空間及使用情形,請(qǐng)看下列這個(gè)例子:

           

          以下是代碼片段:

          [yayug@yayu ~]$ df -h
          Filesystem            Size  Used Avail Use% Mounted on
          /dev/sda1             3.9G  300M  3.4G   8% /
          /dev/sda7             100G  188M   95G   1% /data0
          /dev/sdb1             133G   80G   47G  64% /data1
          /dev/sda6             7.8G  218M  7.2G   3% /var
          /dev/sda5             7.8G  166M  7.2G   3% /tmp
          /dev/sda3             9.7G  2.5G  6.8G  27% /usr
          tmpfs                 2.0G     0  2.0G   0% /dev/shm

           

              參數(shù) -h 表示使用「Human-readable」的輸出,也就是在檔案系統(tǒng)大小使用 GB、MB 等易讀的格式。

              上面的命令輸出的第一個(gè)字段(Filesystem)及最后一個(gè)字段(Mounted on)分別是檔案系統(tǒng)及其掛入點(diǎn)。我們可以看到 /dev/sda1 這個(gè)分割區(qū)被掛在根目錄下。

              接下來(lái)的四個(gè)字段 Size、Used、Avail、及 Use% 分別是該分割區(qū)的容量、已使用的大小、剩下的大小、及使用的百分比。 FreeBSD下,當(dāng)硬盤容量已滿時(shí),您可能會(huì)看到已使用的百分比超過(guò) 100%,因?yàn)?FreeBSD 會(huì)留一些空間給 root,讓 root 在檔案系統(tǒng)滿時(shí),還是可以寫東西到該檔案系統(tǒng)中,以進(jìn)行管理。

              du:查詢文件或文件夾的磁盤使用空間

              如果當(dāng)前目錄下文件和文件夾很多,使用不帶參數(shù)du的命令,可以循環(huán)列出所有文件和文件夾所使用的空間。這對(duì)查看究竟是那個(gè)地方過(guò)大是不利的,所以得指定 深入目錄的層數(shù),參數(shù):--max-depth=,這是個(gè)極為有用的參數(shù)!如下,注意使用“*”,可以得到文件的使用空間大小.

              提醒:一向命令比linux復(fù)雜的FreeBSD,它的du命令指定深入目錄的層數(shù)卻是比linux簡(jiǎn)化,為 -d。

           

          以下是代碼片段:

          [root@bsso yayu]# du -h --max-depth=1 work/testing
          27M     work/testing/logs
          35M     work/testing

          [root@bsso yayu]# du -h --max-depth=1 work/testing/*
          8.0K    work/testing/func.php
          27M     work/testing/logs
          8.1M    work/testing/nohup.out
          8.0K    work/testing/testing_c.php
          12K     work/testing/testing_func_reg.php
          8.0K    work/testing/testing_get.php
          8.0K    work/testing/testing_g.php
          8.0K    work/testing/var.php

          [root@bsso yayu]# du -h --max-depth=1 work/testing/logs/
          27M     work/testing/logs/

          [root@bsso yayu]# du -h --max-depth=1 work/testing/logs/*
          24K     work/testing/logs/errdate.log_show.log
          8.0K    work/testing/logs/pertime_show.log
          27M     work/testing/logs/show.log

           

              值得注意的是,看見一個(gè)針對(duì)du和df命令異同的文章:《du df 差異導(dǎo)致文件系統(tǒng)誤報(bào)解決》。

              du 統(tǒng)計(jì)文件大小相加
              df  統(tǒng)計(jì)數(shù)據(jù)塊使用情況

              如果有一個(gè)進(jìn)程在打開一個(gè)大文件的時(shí)候,這個(gè)大文件直接被rm 或者mv掉,則du會(huì)更新統(tǒng)計(jì)數(shù)值,df不會(huì)更新統(tǒng)計(jì)數(shù)值,還是認(rèn)為空間沒有釋放。直到這個(gè)打開大文件的進(jìn)程被Kill掉。

              如此一來(lái)在定期刪除 /var/spool/clientmqueue下面的文件時(shí),如果沒有殺掉其進(jìn)程,那么空間一直沒有釋放。

              使用下面的命令殺掉進(jìn)程之后,系統(tǒng)恢復(fù)。
              fuser -u /var/spool/clientmqueue

          http://www.yayu.org/look.php?id=162


           

          查看linux文件目錄的大小和文件夾包含的文件數(shù)

              統(tǒng)計(jì)總數(shù)大小

              du -sh xmldb/

              du -sm * | sort -n //統(tǒng)計(jì)當(dāng)前目錄大小 并安大小 排序

              du -sk * | sort -n

              du -sk * | grep guojf //看一個(gè)人的大小

              du -m | cut -d "/" -f 2 //看第二個(gè)/ 字符前的文字

              查看此文件夾有多少文件 /*/*/* 有多少文件

              du xmldb/

              du xmldb/*/*/* |wc -l

              40752

              解釋:

              wc [-lmw]

              參數(shù)說(shuō)明:

              -l :多少行

              -m:多少字符

              -w:多少字

           

          http://linux.chinaitlab.com/command/734706.html


          Linux:ls以K、M、G為單位查看文件大小

          #man ls

          ……

          -h, --human-readable

                          print sizes in human readable format (e.g., 1K 234M 2G)

          ……

          # ls

          cuss.war    nohup.out

          # ls -l

          total 30372

          -rw-r--r--    1 root root 31051909 May 24 10:07 cuss.war

          -rw-------    1 root root          0 Mar 20 13:52 nohup.out

          # ls -lh

          total 30M

          -rw-r--r--    1 root root 30M May 24 10:07 cuss.war

          -rw-------    1 root root     0 Mar 20 13:52 nohup.out

          # ll -h

          total 30M

          -rw-r--r--    1 root root 30M May 24 10:07 cuss.war

          -rw-------    1 root root     0 Mar 20 13:52 nohup.out

          posted @ 2014-03-18 17:48 ZT文萃 閱讀(200) | 評(píng)論 (0)編輯 收藏

          文/端宏斌
          02月25日 18:26

          上周,有個(gè)女生在微信里給我發(fā)消息“炸雞和啤酒”, 我不明白這是什么意思,于是我就回復(fù)她“炸雞和啤酒”,結(jié)果屏幕開始下起雪花來(lái)了。原來(lái)這是一個(gè)彩蛋。為什么炸雞和啤酒就變成彩蛋了呢?上網(wǎng)一查,原來(lái)是 有個(gè)熱播的韓劇,其中有一句臺(tái)詞是:“下雪了,怎么能沒有炸雞和啤酒?”

          最近十年來(lái),有兩件值得關(guān)注的流行文化事件,第一是韓劇風(fēng)靡全 國(guó),不少女孩滿腦子都是韓劇里的男星,閨房墻上貼滿了韓國(guó)男人的海報(bào);第二是日本AV牢牢占據(jù)了男人的硬盤,一些日本AV女星來(lái)內(nèi)地?fù)平鹨淮危晚斔^(guò)去 拍幾十部AV片。如果用一句話來(lái)概括總結(jié),那就是:日本女人坑了中國(guó)男人,韓國(guó)男人坑了中國(guó)女人。

          為什么日本AV和韓劇會(huì)這么流行?用進(jìn)化心理學(xué)的視角很容易進(jìn)行解讀。進(jìn)化心理學(xué)認(rèn)為,我們活著的最終目的就是延續(xù)自己的基因,但對(duì)于男人和女人來(lái)說(shuō),雖然目的一致,但手段各不相同。男人要的很簡(jiǎn)單,讓自己的精子跑到女人的身體里;而女人的要求就復(fù)雜多了。

          我們先來(lái)考察一下日本AV。

          愛情是一種互動(dòng)博弈,你必須先提供對(duì)方想要的,你才能獲得自己想要的。但是AV電影把這個(gè)復(fù)雜的過(guò)程做了終極簡(jiǎn)化,你不需要給女人送花、不需要請(qǐng)她們吃飯、不需要跟她們說(shuō)一堆騙人的鬼話、不需要你有房有車,一切需要你付出的復(fù)雜部分全部省去,就只剩下“性”。

          在 AV電影里的女人,不花你的錢、不在乎你的長(zhǎng)相、不會(huì)跟你嘮叨廢話、不會(huì)讓你去洗碗、不會(huì)讓你出門的時(shí)候順便把垃圾扔掉,她們只會(huì)跟你上床,而且個(gè)個(gè)都長(zhǎng) 得年輕漂亮,你想怎么搞,她就給你怎么搞。在AV中,女人被抽象成了乳房、臀部、下體的混合物,甚至她們都不需要說(shuō)話,連臺(tái)詞都沒有,只要哼哼就行了。

          對(duì)于男人來(lái)說(shuō),這是多么美妙的一個(gè)世界?只是,這樣的女人,在世界上就不存在!

          弄清了日本AV之后,我們?cè)倏纯纯错n劇。

          女 人的需求遠(yuǎn)比男人復(fù)雜,那么韓劇里的男人是怎樣的一個(gè)人呢?首先,他必須是一個(gè)高富帥,這是最低標(biāo)準(zhǔn),如果他不高、不富、不帥,那就是純屌絲,這就變成了 現(xiàn)實(shí)世界,這怎么行?韓劇的目的就是讓你脫離現(xiàn)實(shí),進(jìn)入一個(gè)想象中的世界。在這個(gè)世界里,屌絲根本沒有存在的價(jià)值,因此即使他只是一個(gè)備胎,也必須是一個(gè) 高富帥。

          其次,光是高富帥還不行,還要素質(zhì)、品位、知識(shí)俱佳,脾氣要好、隨叫隨到。對(duì)自己從來(lái)就不亂想,可以抱在一起聊一晚上,什么都不發(fā)生。自己心里那些小秘密小心思,他可以一下就猜透。如果你要走,他會(huì)緊緊抱住你強(qiáng)吻你,就是不讓你走。

          簡(jiǎn)而言之,韓劇創(chuàng)造了這樣一個(gè)世界:女人不需要提供什么,就會(huì)有一個(gè)白馬王子對(duì)你無(wú)條件的付出。這個(gè)白馬王子滿足你一切對(duì)于男人的幻想,他還對(duì)你非常的專一。簡(jiǎn)直比童話還要童話。

          對(duì)于女人來(lái)說(shuō),這是多么美妙的一個(gè)世界?只是,這樣的男人,在世界上也不存在!

          如果說(shuō)AV電影是消費(fèi)女色,那么韓劇就是消費(fèi)男色。AV忽悠了中國(guó)男人,韓劇麻醉了中國(guó)女人。它們的副作用是,提高了人們對(duì)于感情的“閾值”。閾值指的是觸發(fā)某種行為或者反應(yīng)產(chǎn)生所需要的的最低值。

          如 果一個(gè)女人天天看韓劇,那么她就會(huì)覺得身邊的男人個(gè)個(gè)面目可憎。如果她是一個(gè)村里的村姑,根本沒見過(guò)世面,那么她早早就會(huì)嫁給村里的二蛋子,然后生一堆 娃。如果這個(gè)村姑考上大學(xué)跑到上海工作,沒事就看一堆韓劇,那么她就會(huì)變成剩女,因?yàn)樗X得追求者都是屌絲,沒有一個(gè)靠譜的。根本原因就在于,韓劇提高了 她對(duì)于感情的閾值,她已經(jīng)很難被感動(dòng)了。韓劇流行的這幾年,恰好伴隨著“剩女”的產(chǎn)生,這難道只是巧合嗎?中國(guó)計(jì)生委應(yīng)該給韓國(guó)人頒發(fā)“控制人口過(guò)快增 長(zhǎng)”大獎(jiǎng)。

          為什么現(xiàn)代人越來(lái)越感覺不幸福?這和閾值的提高有很大關(guān)系。在物質(zhì)貧乏的年代,過(guò)年吃一頓豬肉餃子就感覺幸福無(wú)比,現(xiàn)在給你吃山珍海味也不過(guò)如此。很多人都說(shuō),現(xiàn)在過(guò)年沒有年味了,其實(shí)并非沒有年味,只是你的閾值提高了,你對(duì)各方面的要求都今非昔比了。

          老端的微信:laoduandeguandian

          posted @ 2014-03-17 08:41 ZT文萃 閱讀(263) | 評(píng)論 (0)編輯 收藏

          本文轉(zhuǎn)載自:http://www.cnblogs.com/liufeng24/p/3587556.html

          近半年來(lái),本人幾乎天天逛各大論壇網(wǎng)站,瀏覽大牛們的博客,摘抄了不少經(jīng)典的好詞好段,雖是只言片語(yǔ),但是這都是當(dāng)代大牛們的語(yǔ)錄心得,所以今天拿出來(lái)與大家分享,希望多留言,共同探討。

           

          1、很多問題不見得會(huì)出在你身上,但你亦需要想法解決問題,否則就會(huì)變成你的問題。

          2、懂得但策略的說(shuō)不。(不會(huì)這個(gè)準(zhǔn)備累死吧,程序員)

          3、我考進(jìn)事業(yè)單位。呵呵,沒有傳說(shuō)中的那么好環(huán)境。這里待遇低下,事情繁雜,領(lǐng)導(dǎo)眾多,群眾騷擾得我不勝其煩

          4、真的,程序員走了管理路線,反而會(huì)感到人生非常多浪費(fèi)時(shí)間,太多的精力用來(lái)應(yīng)付各類瑣事……

          5、不只會(huì)埋頭寫程序。

          6、不斷規(guī)劃與尋找自己的人生, 想法把自己變重要。

          7、想法把自己變得不重要,以實(shí)現(xiàn)其他重要的目標(biāo)。

          8、 做程序員,專門做技術(shù),腦累;再往上爬,做到項(xiàng)目經(jīng)理,各種繁雜的事,天天解決不完的,心累。

          9、提升碼農(nóng)畝產(chǎn),掰直碼農(nóng)方向,授人以漁,功德無(wú)量,利在千秋

           

          10、他有兩個(gè)辛辣但不乏洞察力的斷言:真正的牛人也許一輩子只投4次簡(jiǎn)歷,這些家伙一畢業(yè)就被好公司搶走了,并且他們的雇主會(huì)給他們不賴的待遇,所以他們也不想挪窩。(剛剛?cè)ナ赖腄ennis Ritchie就是這樣一個(gè)人)而“人才”市場(chǎng)上能找到的大多都不是什么人才。招到這幫人輕則費(fèi)錢重則把你公司搞掛。

          11、“現(xiàn)在開發(fā)者們都喜歡說(shuō)自己有一些偉大的想法,甚至有人發(fā)給我郵件說(shuō),讓我們一起改變世界吧。但我認(rèn)為,腦子里的想法在付諸實(shí)際 得以成現(xiàn)實(shí)之前,都是一文不值的,太多人都有自己的想法,關(guān)鍵在于如何去實(shí)現(xiàn)它。就算你有很好的商業(yè)模式,也需要依靠產(chǎn)品支撐。而現(xiàn)在很多有想法的人都把 自己定位為一個(gè)類似產(chǎn)品經(jīng)理的角色,往往缺少美工,開發(fā),測(cè)試,推廣,運(yùn)營(yíng)的經(jīng)驗(yàn),但我認(rèn)為,只要你想辦法,這些問題其實(shí)都很好解決。”

          12、最近一幫做技術(shù)的在微博上吵誰(shuí)比誰(shuí)NB。其實(shí)做技術(shù)不像練武,非得打遍天下。能很好解決自己遇到的問題搞定公司的需求就很好;進(jìn)一步,精益求精下,提升下性能重構(gòu)下接口,做到優(yōu)雅可讀;再進(jìn)一步,整理成可重用的方式發(fā)布出來(lái),讓更多人受益。真正NB是多少人因?yàn)槟愣畹酶茫瞧渌?/span>

          13、越是好的公司,越是好的項(xiàng)目組在招開發(fā)人員時(shí)他們面的東西越是底層。

          14、編寫Java開發(fā)包都是一群神人,拿Java源碼來(lái)分析問題,我們無(wú)疑站在了巨人的肩膀上。所謂站得高,尿的遠(yuǎn)也。當(dāng)然,所謂偷拍都是避免不了的

          15、大牛僅僅是 利用他們所掌握的"原理級(jí)"技術(shù),將"應(yīng)用級(jí)"技術(shù)進(jìn)行不同的排列組合而已。

          16、前期追深度,否則會(huì)華而不實(shí),后期追廣度,否則會(huì)坐井觀天

          17、對(duì)于英語(yǔ)。是你前期提升的關(guān)鍵,不是你未來(lái)發(fā)展的關(guān)鍵,要不咋有一大堆海歸擱淺了呢

          18、有很多的不快樂,其實(shí)是源自不滿足,而不滿足,很多時(shí)候是源自于心不定,而心不定則是因?yàn)椴磺宄烤棺约阂裁矗磺宄裁吹慕Y(jié)果就是什么都想要,結(jié)果什么都沒得到。

          19、多認(rèn)識(shí)一些人,多和比自己強(qiáng)的人打交道,同樣能找到好的老師,不要和一群同樣郁悶的人一起控訴社會(huì),控訴老板,這幫不上你,只會(huì)讓你更消極。和那些比你強(qiáng)的人打交道,看他們是怎么想的,怎么做的,學(xué)習(xí)他們,然后跟更強(qiáng)的人打交道。

          20、

                每個(gè)人都希望,自己是獨(dú)一無(wú)二的特殊者    

            含著金匙出生、投胎到好家庭、工作安排到電力局拿1w月薪這樣的小概率事件,當(dāng)然最好輪到自己    

            紅軍長(zhǎng)征兩萬(wàn)五、打成右派反革命、胼手胝足犧牲尊嚴(yán)去奮斗,最好留給祖輩父輩和別人    

            自然,不是每個(gè)吃過(guò)苦的人都會(huì)得到回報(bào)    

            但是,任何時(shí)代,每一個(gè)既得利益者身后,都有他的祖輩父輩奮斗掙扎乃至流血付出生命的身影    

            羨慕別人有個(gè)好爸爸,沒什么不可以    

            問題是,你的下一代,會(huì)有一個(gè)好爸爸嗎?    

            至于問到為什么不能有同樣的贏面概率?我只能問:為什么物種競(jìng)爭(zhēng)中,人和猴子不能有同樣的贏面概率?

          物競(jìng)天擇。猴子的靈魂不一定比你卑微,但你身后有幾十萬(wàn)年的類人猿進(jìn)化積淀。

           

          21、作為職業(yè)規(guī)劃師,我想告訴你關(guān)于工資的一個(gè)秘密,年薪月薪是相當(dāng)有欺騙性的東西。真正起作用的,是時(shí)薪——你一定要看看自己的單位時(shí)間是否更加值錢。

          22、我們爭(zhēng)分奪秒計(jì)算自己的工資,卻很少計(jì)算自己的空白時(shí)間。其實(shí)空白才是未來(lái)能夠獲得巨大收益的東西。我們常說(shuō)年輕是最大的資本,很多人年輕的時(shí)候全部投入工作,那么資本也就直接取現(xiàn)了,再無(wú)增值的可能。所以第二條關(guān)于工資的做事,工資收入=工資+可能性。

          23、記得,對(duì)于那些以?shī)Z取你最重要的東西——比如健康、生活、好心情、從容、家庭為代價(jià)的工資,千萬(wàn)別碰

          24、要有足夠的“亮劍”資本

          25、能力固然重要,但并不能代表全部

          26、2013年3.1日,創(chuàng)業(yè)到現(xiàn)在,整整一年,中間發(fā)生了很多很多事,沒取得什么成績(jī),但內(nèi)心卻有一種豁然開朗的感覺,也許這就是成長(zhǎng)。如果目標(biāo)是既定的,那剩下的就是方法

          27、棧和隊(duì)列的區(qū)別是啥? 吃多了拉就是隊(duì)列;吃多了吐就是棧。

          28、“能在書本上簡(jiǎn)單查到的東西永遠(yuǎn)不要放進(jìn)你的記憶里。”

          29、技術(shù)之路最公平也最殘酷的原因是:沒有捷徑,需要日積月累的積累,以及對(duì)技術(shù)持久的熱情。

          30、“回頭想想,人的感覺有時(shí)真的很不靠譜,我們寧肯裹緊被子,躲在 小屋里抵御風(fēng)雪,也不愿打點(diǎn)行囊,奔赴遙遠(yuǎn)南方的溫暖春天。我們總是被眼前的利益誘惑,很難做出目光遠(yuǎn)大的規(guī)劃。而當(dāng)我們明白了這些后,已經(jīng)沒有時(shí)間重新 來(lái)過(guò)了。說(shuō)到創(chuàng)業(yè)公司和大公司的比較和選擇,就更明顯了。不過(guò)這些年,中國(guó)的創(chuàng)業(yè)環(huán)境越來(lái)越好了,IT領(lǐng)域創(chuàng)業(yè)成功的小公司也越來(lái)越多了,在做選擇的時(shí)候 多考慮一些靠譜的創(chuàng)業(yè)團(tuán)隊(duì),對(duì)做技術(shù)的人來(lái)講,真的是利大于弊的。待在大公司里頂多能圖個(gè)溫飽,創(chuàng)業(yè)團(tuán)隊(duì)才是真正能讓人發(fā)財(cái)呀。”

          31、寫作很重要

          通過(guò)寫作清晰地表達(dá)觀點(diǎn),這很有幫助。從某種程度上來(lái)說(shuō),寫代碼和寫作非常相似,兩種都需要你把你的想法,通過(guò)某個(gè)結(jié)構(gòu)化的方式清晰并 且無(wú)歧義的表達(dá)出來(lái)。Email當(dāng)然是寫不完的了,不過(guò)還有你所開發(fā)的產(chǎn)品特性所配套的文檔、需要清晰描述Bug的漏洞報(bào)告、還有對(duì)你修復(fù)的Bug做出的 解釋。在大學(xué)里寫作并不是重點(diǎn),但是如果你寫作好的話,這絕對(duì)是工作中的一個(gè)籌碼。

          32、某個(gè)人的三條感悟

          一、不管是給別人打工還是自已干,都要全心全意的工作,因?yàn)槟闼龅?任何一點(diǎn)工作都會(huì)讓自已的人生多一點(diǎn)籌碼,這一點(diǎn)最最重要!這樣的例子我至少可以舉出兩起,優(yōu)秀的開發(fā)人員被其它新公司挖走,并給一定的股份,成為新公司 的股東的例子。當(dāng)時(shí)與這樣的開發(fā)人員一個(gè)部門同時(shí)工作或更早工作的有許多人,他們平時(shí)經(jīng)常偷點(diǎn)懶,能少干點(diǎn)工作就少干點(diǎn),有時(shí)候還笑話那個(gè)平時(shí)努力工作的 人傻,幾年過(guò)去了,究竟誰(shuí)比誰(shuí)傻?
          二、多與市場(chǎng)人員交朋友,你接觸他們時(shí)可能總會(huì)覺得他們知識(shí)比你少,甚至素質(zhì)比你低,可能比你還有點(diǎn)黃。但實(shí)際上他們比你更懂這個(gè)社會(huì)!參加到他們這個(gè)圈子中去,和他們一起賭賭錢、一起聊聊天、一起洗洗桑拿、一起…..你會(huì)通過(guò)他們接觸到另外一個(gè)世界。
          三、機(jī)會(huì)遠(yuǎn)比錢重要,掙不掙錢在年輕時(shí)并不是特別重要!不論是在實(shí)際生活中還是在網(wǎng)上或其它地方,如果有機(jī)會(huì)參與到除本職工作外的一些項(xiàng)目或產(chǎn)品的開發(fā)中(包括你的朋友拉你去做點(diǎn)小生意之類的非開發(fā)性質(zhì)的工作),那怕是幫忙的性質(zhì),也要積極介入,至少你會(huì)交到很多的朋友,這樣你的人生會(huì)多出很多的機(jī)會(huì)。

          33、是否使用框架,使用什么樣的框架,這都不是重要的,重要的是我們要有框架的意識(shí)。

          34、語(yǔ)言本向并不重要,解決問題的創(chuàng)新方法才是王道。所以在實(shí)際軟件開發(fā)過(guò)程中,為了能夠更好的貼近業(yè)務(wù),我們不得不選擇相對(duì)容易能夠解決問題的編程語(yǔ)言。

          35、專業(yè)知識(shí)蘊(yùn)藏在狂熱的消費(fèi)者之中。當(dāng)消費(fèi)者高興的時(shí)候,用戶團(tuán)體比廣告的作用還大。

          posted @ 2014-03-08 20:44 ZT文萃 閱讀(203) | 評(píng)論 (0)編輯 收藏

          CPU
          CPU好比一個(gè)人的大腦,CPU的運(yùn)算能力就像平時(shí)心算,心算速度越快CPU的性能就越好。AMD目前不給力,3A平臺(tái)也只能在低端系列拼一拼,高端還是Intel的天下。
          Intel CPU推薦
          賽揚(yáng)系列:G1610、G1620、G1820
          奔騰系列:G2020、G2030、G3220
          酷睿  I  5:3470、3570、3570K、4670K
          酷睿  I  7:3770、4770、3770K、4770K
          至強(qiáng)系列:E3-1230V2、E3-1230V3
          個(gè)人覺得Intel的奔騰和賽揚(yáng)系列CPU足夠滿足平常辦公、上網(wǎng)、看電影、玩玩小游戲等日常需求了。酷睿系列CPU足以應(yīng)付目前大多數(shù)3D網(wǎng)游和單機(jī)游戲,I3目前性價(jià)比低,有種低不成高不就的感覺。游戲機(jī)還是咬咬牙上I5,不會(huì)超頻就選I5-3470、I5-4570。想折騰的就選擇帶K的CPU,比如I5-3570K、I5-4670K。工作設(shè)計(jì)、高帥富土豪類直接上至強(qiáng)和I7系列不糾結(jié),在土豪面前毫無(wú)性價(jià)比可言,玩得爽才是王道。
          說(shuō)明一下:CPU盒裝和散片的差別在于是否是正規(guī)的質(zhì)保,原盒是3年質(zhì)保,而散片(無(wú)散熱器,就一個(gè)CPU)大多是店鋪質(zhì)保一年。

          散熱
          個(gè)人認(rèn)為原裝的散熱基本上能夠滿足需求,當(dāng)然如果你買的是散片CPU不妨多花點(diǎn)錢,無(wú)論從散熱還是噪音方面都有不錯(cuò)的提升。
          CPU散熱推薦
          九州風(fēng)神玄冰400、九州風(fēng)神霜塔、采融B81、利民HR-02M

          主板
          主板好比人體的骨架,能做多少活,能干多大事還需看主板。世界一線主板大廠已被華碩、技嘉、華擎三分天下,微星已被華碩的子公司華擎成功地小三上位。低端不會(huì)超頻的用H81/B85主板最佳,高端不差錢又想折騰的直接Z87不糾結(jié),至于具體到那個(gè)型號(hào),看自己需求什么樣的功能即可。個(gè)人建議直接上華擎各系列,這種BIOS做得NB到爆,價(jià)格便宜量又足的屌絲之友去哪找!

          內(nèi)存
          內(nèi)存好比人體的神經(jīng),把腦和脊髓的興奮傳給各個(gè)器官,或把各個(gè)器官的興奮傳給腦和脊髓,相當(dāng)于說(shuō)內(nèi)存越大對(duì)事件處理的速度越快。個(gè)人覺得4G勉強(qiáng)夠用,8G還算可以,12G以上看各人的需求。威剛、海盜船、金士頓、芝奇、宇瞻……品牌比較多就不一一推薦了,不超頻直接網(wǎng)上商城買金士頓。實(shí)體店千萬(wàn)別買金士頓,現(xiàn)在的金士頓假條比以前NB多了,直接連原廠都難分辨,可以選宇瞻或者威剛的。

          顯卡
          顯卡好比人臉化妝,你可以選擇不化妝,也可以去做韓國(guó)美女。目前比較出名的顯卡廠商有技嘉、藍(lán)寶石、華碩、微星、迪蘭恒進(jìn)、HIS、映眾,游戲類顯卡競(jìng)爭(zhēng)最激烈,而且價(jià)位又互相錯(cuò)開,所以說(shuō)A/N兩大顯卡芯片廠商簡(jiǎn)直狡猾到爆。
          N卡低端買650,中低端買650TI,中端買660,中高端買760,高端買770。切記顯卡型號(hào)第二位數(shù)少于5(不包括5),比如210、430、640等等絕對(duì)是垃圾!
          A卡低端買7750,中端買7770或260X,中高端買R270X,高端買R280X。切記顯卡型號(hào)第三位數(shù)少于5(包括5),比如5450、6450等等絕對(duì)是垃圾,另外新系列顯卡R250性價(jià)比低也不建議購(gòu)買。

          硬盤
          大水過(guò)后500G和1TB的差價(jià)很小了,最好直接上單碟1TB的。希捷西部數(shù)據(jù)都看臉,個(gè)人覺得希捷是慢慢死的,有時(shí)間給你轉(zhuǎn)移數(shù)據(jù);西部數(shù)據(jù)說(shuō)掛就掛,根本沒給你挽救的時(shí)間。SSD本人沒用過(guò),就不在這里吹牛逼了。

          機(jī)箱
          機(jī)箱好比人的衣服,除了外觀好看外還能保護(hù)重要部位。這里就不多說(shuō)了,說(shuō)多了都是淚,秀才說(shuō)不過(guò)倔的兵,我直接推薦算了。
          酷冷至尊毀滅者經(jīng)典U3版、酷冷至尊開拓者U3普及版、恩杰H230、恩杰小幻影、恩杰H2、銀欣烏鴉、銀欣FT02

          電源
          電源好比人體的血液,血液不正常對(duì)人體整體的功能都有危害,一臺(tái)電腦最重要的是電源,電源功率小了,那么恭喜你,你可以提前給你的設(shè)備挖好坑買棺材了。目前市面上的電源都是貼牌貨,沒有好的電源牌子,只有好的電源型號(hào)。有條件盡量不要用電腦城4大坑爹之王:航嘉、長(zhǎng)城、金河田、大水牛之流的電源,低端電源已被黑出翔,請(qǐng)自行劉東一下“紅星炸彈”,個(gè)人建議首選臺(tái)系或臺(tái)系代工的電源。
          安鈦克VP350P、安鈦克ECO400、安鈦克ECO520、安鈦克TPN550、安鈦克HCP1200,注意安鈦克VP450P是坑爹貨
          海韻S12II-330、海韻S12II-430、海韻S12II-520、海韻S12II-620
          在確定各硬件后,可以去各個(gè)官網(wǎng)查看硬件的參數(shù),然后把功耗加起來(lái)基本上就是要買電源功率的大小了,至于電源功率余量留多少看各人需求。

          顯示器
          有人喜歡屏幕大,有人喜歡16:10,眾口難調(diào)很難作推薦,反正認(rèn)定三年質(zhì)保的大品牌顯示器就沒錯(cuò)。為了大家的視力,請(qǐng)不要選擇18.5、20、21.5這幾個(gè)尺寸的顯示器,可以劉東一下“顯示器分辨率”。需要注意的是顯示器尺寸越大標(biāo)準(zhǔn)的分辨率越高,對(duì)機(jī)器的配置的需求也越高。

          posted @ 2014-03-06 05:32 ZT文萃 閱讀(185) | 評(píng)論 (0)編輯 收藏

          http://laohuang.iteye.com/blog/55613

          1.拳頭之Get/Post
          拳頭是最基本的一重武器,也是最重要的,好比練武之人必須先扎穩(wěn)馬步。

          java 代碼
           
          1. HttpClient httpclient=new HttpClient();//創(chuàng)建一個(gè)客戶端,類似打開一個(gè)瀏覽器  
          2. GetMethod getMethod=new GetMethod("http://www.blablabla.com");//創(chuàng)建一個(gè)get方法,類似在瀏覽器地址欄中輸入一個(gè)地址  
          3. int statusCode=httpclient.executeMethod(getMethod);//回車——出拳!  
          4. System.out.println("response=" + getMethod.getResponseBodyAsString());//察看拳頭命中情況,可以獲得的東西還有很多,比如head, cookies等等  
          5. getMethod.releaseConnection();//釋放,記得收拳哦  


          2.孔雀翎之支持https

          如何支持https?
          java 代碼
           
          1. static{  
          2.     Protocol easyhttps = new Protocol("https", new EasySSLProtocolSocketFactory(), 443);  
          3.     Protocol.registerProtocol("https", easyhttps);  
          4. }  

          在執(zhí)行具體的http method之前,暗中將https協(xié)議注冊(cè)一把,如孔雀翎暗藏玄機(jī),斃敵于無(wú)形。記住,官方的binary發(fā)行版本沒有ssl的contribute包,方法一是下載源代碼版本來(lái)打造你的孔雀翎。

          3.多情環(huán)之cookies
          常道人老多情,其實(shí)是記憶太多,所以情之所至,正如cookies甜心,無(wú)論你走到那,總把你牽掛:
          java 代碼
           
          1. HttpClient httpclient=new HttpClient();  
          2. httpclient.getParams().setCookiePolicy(CookiePolicy.RFC_2109);//RFC_2109是支持較普遍的一個(gè),還有其他cookie協(xié)議  
          3. HttpState initialState = new HttpState();  
          4. Cookie cookie=new Cookie();  
          5. cookie.setDomain("www.balblabla.com");  
          6. cookie.setPath("/");  
          7. cookie.setName("多情環(huán)");  
          8. cookie.setValue("多情即無(wú)情");  
          9. initialState.addCookie(cookie);  
          10. httpclient.setState(initialState);  
          11. ...  


          4.離別鉤之解構(gòu)cookies

          多情環(huán)的反面即離別鉤,鉤出,敵之身體某個(gè)部件即要與身體別離,端的是無(wú)情:
          java 代碼
           
          1. ...//執(zhí)行了某些get/post方法后  
          2. Cookie[] cookies = httpclient.getState().getCookies();  
          3. System.out.println("Present cookies: ");  
          4. for (int i = 0; i < cookies.length; i++) {//循環(huán)結(jié)構(gòu)零部件  
          5.     System.out.println(" - " + cookies[i].toExternalForm());  
          6.     System.out.println(" - domain=" + cookies[i].getDomain());  
          7.     System.out.println(" - path=" + cookies[i].getPath());  
          8.     ...            
          9. }  


          5.霸王搶之post參數(shù)
          槍,長(zhǎng)兵器之王,諸多名將均使一桿或金或銀命名的名槍,比如岳飛。post方法在提交參數(shù)對(duì)時(shí),猶如靈蛇出洞:
          java 代碼
           
          1. PostMethod postMethod = new PostMethod("http://www.saybot.com/postme");  
          2. NameValuePair[] postData = new NameValuePair[2];  
          3. postData[0] = new NameValuePair("武器", "槍");  
          4. postData[1] = new NameValuePair("什么槍", "神槍");  
          5. postMethod.addParameters(postData);  
          6. ...//出槍吧  


          6.七星碧玉刀之支持代理(proxy)

          代理,非常重要,尤其在局域網(wǎng)橫行的年頭,沒有代理,你在公司上不了QQ,沒有代理,google不了網(wǎng)頁(yè)快照,代理之威,可比七星碧玉刀,無(wú)刀,在局域網(wǎng)和開發(fā)當(dāng)中,一切白搭:
          java 代碼
           
          1. HttpClient httpclient=new HttpClient();  
          2. httpClient.getHostConfiguration().setProxy("192.168.0.1", 9527);  
          3. httpClient.getParams().setAuthenticationPreemptive(true);//重要!!!告訴httpclient,使用搶先認(rèn)證,否則你會(huì)收到“你沒有資格”的惡果  
          4. /* 
          5.   這一步也至關(guān)重要,MyProxyCredentialsProvider實(shí)現(xiàn)了org.apache.commons.httpclient.auth.CredentialsProvider接口, 
          6.   返回代理的credential(username/password)*/  
          7. httpClient.getParams().setParameter(CredentialsProvider.PROVIDER, new MyProxyCredentialsProvider());  
          8. httpClient.getState().setProxyCredentials(  
          9.     new AuthScope("192.168.0.1",  
          10.         AuthScope.ANY_PORT, //任意端口哦,可要小心  
          11.         AuthScope.ANY_REALM),//任意域哦,可要小心  
          12. new UsernamePasswordCredentials("username",//proxy的用戶名  
          13.                         "password"));//proxy的密碼  

          ...

          7.長(zhǎng)生劍之天下第一
          看httpclient的官方文檔:jakarta.apache.org/commons/httpclient/userguide.html
          看Hilton網(wǎng)友寫的小葵花寶典筆記:www.cnjm.net/tech/article1155.html
          通讀后,你會(huì)有種拔劍四顧心茫然的高手感覺。

          七種武器,打完收工!

          posted @ 2014-02-26 18:10 ZT文萃 閱讀(284) | 評(píng)論 (0)編輯 收藏

          轉(zhuǎn)載自:
          http://wallimn.iteye.com/blog/540566

          最近忙于一個(gè)項(xiàng)目,了解下httpclient,在這里總結(jié)出來(lái),和大家一起學(xué)習(xí)分享,希望各位朋友提出寶貴的意見。

          首先介紹一下項(xiàng)目的背景:
            目標(biāo):把國(guó)內(nèi)一家保險(xiǎn)公司的“WEB一賬通”改成“WAP一賬通”。
            資源:客戶不提供任何的webservice接口。
           
          本項(xiàng)目中用到的第三方組件是apache的httpclient,一個(gè)非常強(qiáng)大的網(wǎng)頁(yè)抓取工具(抓這個(gè)字用得可能不太好), 這里和大家
          一起討論下httpclient的一些常用用法和要注意的地方。

          本文引用的資源列表:

            httpclient入門:  http://www.ibm.com/developerworks/cn/opensource/os-httpclient/
            httpclient證書導(dǎo)入:http://www.aygfsteel.com/happytian/archive/2006/12/22/89447.html
            httpclient高級(jí)認(rèn)識(shí):http://laohuang.iteye.com/blog/55613
            httpclient官方文檔:http://hc.apache.org/httpcomponents-client/index.html
            httpclient資源關(guān)閉:http://www.iteye.com/topic/234759
           
           
          上面的文章寫得很好,看完之后也就知道怎么用httpclient這個(gè)很好的工具了,但是在這里還是補(bǔ)充一些比較重要的東西,也是項(xiàng)目中經(jīng)
          常碰到的問題。

          首先要注意的有以下幾點(diǎn):
          1、httpclient連接后資源釋放問題很重要,就跟我們用database connection要釋放資源一樣。
          2、https網(wǎng)站采用ssl加密傳輸,證書導(dǎo)入要注意。
          3、做這樣的項(xiàng)目最好先了解下http協(xié)義,比如302,301,200,404返回代碼的含義(這是最基本的),cookie,session的機(jī)制。
          4、httpclient的redirect狀態(tài)默認(rèn)是自動(dòng)的,這在很大程度上給開發(fā)者很大的方便(如一些授權(quán)獲得cookie),但是有時(shí)要手動(dòng)管理下,比如
            有時(shí)會(huì)遇到CircularRedirectException異常,出現(xiàn)這樣的情況是因?yàn)榉祷氐念^文件中l(wèi)ocation值指向之前重復(fù)(端口號(hào)可以不同)地址,導(dǎo)致可能會(huì)出現(xiàn)死
            循環(huán)遞歸重定向,這時(shí)可以手動(dòng)關(guān)閉:method.setFollowRedirects(false)
          5、有的網(wǎng)站會(huì)先判別用戶的請(qǐng)求是否是來(lái)自瀏覽器,如不是,則返回不正確的文本,所以用httpclient抓取信息時(shí)在頭部加入如下信息:
            header.put("User-Agent", "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1; QQDownload 1.7; .NET CLR 1.1.4322; CIBA; .NET CLR 2.0.50727)");
          6、當(dāng)post請(qǐng)求提交數(shù)據(jù)時(shí)要改變默認(rèn)編碼,不然的話提交上去的數(shù)據(jù)會(huì)出現(xiàn)亂碼。重寫postMethod的setContentCharSet()方法就可以了:





           
          下面寫一個(gè)通用類來(lái)處理request請(qǐng)求返回的文本:
          Java代碼  收藏代碼
          1. /* 
          2.  * HttpRequestProxy.java 
          3.  * 
          4.  * Created on November 3, 2008, 9:53 AM 
          5.  */  
          6.   
          7. package cn.com.mozat.net;  
          8.   
          9. import java.io.BufferedReader;  
          10. import java.io.IOException;  
          11. import java.io.InputStream;  
          12. import java.io.InputStreamReader;  
          13. import java.util.HashMap;  
          14. import java.util.Iterator;  
          15. import java.util.Map;  
          16. import java.util.Set;  
          17.   
          18. import org.apache.commons.httpclient.Header;  
          19. import org.apache.commons.httpclient.HttpClient;  
          20. import org.apache.commons.httpclient.HttpException;  
          21. import org.apache.commons.httpclient.HttpMethod;  
          22. import org.apache.commons.httpclient.NameValuePair;  
          23. import org.apache.commons.httpclient.SimpleHttpConnectionManager;  
          24. import org.apache.commons.httpclient.methods.GetMethod;  
          25. import org.apache.commons.httpclient.methods.PostMethod;  
          26.   
          27. import cn.com.mozat.exception.CustomException;  
          28.   
          29. /** 
          30.  *  
          31.  * @author bird  email:lihongfu-84@163.com 
          32.  * 
          33.  * 2008-11-4  09:49:48 
          34.  */  
          35. public class HttpRequestProxy{  
          36.     //超時(shí)間隔  
          37.     private static int connectTimeOut = 60000;  
          38.  //讓connectionmanager管理httpclientconnection時(shí)是否關(guān)閉連接  
          39.     private static boolean alwaysClose = false;  
          40.  //返回?cái)?shù)據(jù)編碼格式  
          41.     private String encoding = "UTF-8";  
          42.       
          43.     private final HttpClient client = new HttpClient(new SimpleHttpConnectionManager(alwaysClose));  
          44.    
          45.     public HttpClient getHttpClient(){  
          46.         return client;  
          47.     }  
          48.         
          49.     /** 
          50.      * 用法: 
          51.      * HttpRequestProxy hrp = new HttpRequestProxy(); 
          52.      * hrp.doRequest("http://www.163.com",null,null,"gbk"); 
          53.      *  
          54.      * @param url  請(qǐng)求的資源URL 
          55.      * @param postData  POST請(qǐng)求時(shí)form表單封裝的數(shù)據(jù) 沒有時(shí)傳null 
          56.      * @param header   request請(qǐng)求時(shí)附帶的頭信息(header) 沒有時(shí)傳null 
          57.      * @param encoding response返回的信息編碼格式 沒有時(shí)傳null 
          58.      * @return  response返回的文本數(shù)據(jù) 
          59.      * @throws CustomException  
          60.      */  
          61.     public String doRequest(String url,Map postData,Map header,String encoding) throws CustomException{  
          62.      String responseString = null;  
          63.      //頭部請(qǐng)求信息  
          64.      Header[] headers = null;  
          65.      if(header != null){  
          66.       Set entrySet = header.entrySet();  
          67.          int dataLength = entrySet.size();  
          68.           headers= new Header[dataLength];  
          69.          int i = 0;  
          70.          for(Iterator itor = entrySet.iterator();itor.hasNext();){  
          71.           Map.Entry entry = (Map.Entry)itor.next();  
          72.           headers[i++] = new Header(entry.getKey().toString(),entry.getValue().toString());  
          73.          }  
          74.      }  
          75.      //post方式  
          76.         if(postData!=null){  
          77.          PostMethod postRequest = new PostMethod(url.trim());  
          78.          if(headers != null){  
          79.           for(int i = 0;i < headers.length;i++){  
          80.            postRequest.setRequestHeader(headers[i]);  
          81.           }  
          82.          }  
          83.          Set entrySet = postData.entrySet();  
          84.          int dataLength = entrySet.size();  
          85.          NameValuePair[] params = new NameValuePair[dataLength];  
          86.          int i = 0;  
          87.          for(Iterator itor = entrySet.iterator();itor.hasNext();){  
          88.           Map.Entry entry = (Map.Entry)itor.next();  
          89.           params[i++] = new NameValuePair(entry.getKey().toString(),entry.getValue().toString());  
          90.          }  
          91.          postRequest.setRequestBody(params);  
          92.          try {  
          93.     responseString = this.executeMethod(postRequest,encoding);  
          94.    } catch (CustomException e) {  
          95.     throw e;  
          96.    } finally{  
          97.     postRequest.releaseConnection();  
          98.    }  
          99.         }  
          100.       //get方式  
          101.         if(postData == null){  
          102.          GetMethod getRequest = new GetMethod(url.trim());  
          103.          if(headers != null){  
          104.           for(int i = 0;i < headers.length;i++){  
          105.            getRequest.setRequestHeader(headers[i]);  
          106.           }  
          107.          }  
          108.          try {  
          109.     responseString = this.executeMethod(getRequest,encoding);  
          110.    } catch (CustomException e) {  
          111.                 e.printStackTrace();  
          112.     throw e;  
          113.    }finally{  
          114.     getRequest.releaseConnection();  
          115.    }  
          116.         }  
          117.    
          118.         return responseString;  
          119.     }  
          120.   
          121.  private String executeMethod(HttpMethod request, String encoding) throws CustomException{  
          122.   String responseContent = null;  
          123.   InputStream responseStream = null;  
          124.   BufferedReader rd = null;  
          125.   try {  
          126.    this.getHttpClient().executeMethod(request);  
          127.    if(encoding != null){  
          128.     responseStream = request.getResponseBodyAsStream();  
          129.      rd = new BufferedReader(new InputStreamReader(responseStream,  
          130.                       encoding));  
          131.               String tempLine = rd.readLine();  
          132.               StringBuffer tempStr = new StringBuffer();  
          133.               String crlf=System.getProperty("line.separator");  
          134.               while (tempLine != null)  
          135.               {  
          136.                   tempStr.append(tempLine);  
          137.                   tempStr.append(crlf);  
          138.                   tempLine = rd.readLine();  
          139.               }  
          140.               responseContent = tempStr.toString();  
          141.    }else  
          142.     responseContent = request.getResponseBodyAsString();  
          143.              
          144.    Header locationHeader = request.getResponseHeader("location");  
          145.    //返回代碼為302,301時(shí),表示頁(yè)面己經(jīng)重定向,則重新請(qǐng)求location的url,這在  
          146.    //一些登錄授權(quán)取cookie時(shí)很重要  
          147.    if (locationHeader != null) {  
          148.              String redirectUrl = locationHeader.getValue();  
          149.              this.doRequest(redirectUrl, null, null,null);  
          150.          }  
          151.   } catch (HttpException e) {  
          152.    throw new CustomException(e.getMessage());  
          153.   } catch (IOException e) {  
          154.    throw new CustomException(e.getMessage());  
          155.   
          156.   } finally{  
          157.    if(rd != null)  
          158.     try {  
          159.      rd.close();  
          160.     } catch (IOException e) {  
          161.      throw new CustomException(e.getMessage());  
          162.     }  
          163.     if(responseStream != null)  
          164.      try {  
          165.       responseStream.close();  
          166.      } catch (IOException e) {  
          167.       throw new CustomException(e.getMessage());  
          168.   
          169.      }  
          170.   }  
          171.   return responseContent;  
          172.  }  
          173.    
          174.      
          175.  /** 
          176.   * 特殊請(qǐng)求數(shù)據(jù),這樣的請(qǐng)求往往會(huì)出現(xiàn)redirect本身而出現(xiàn)遞歸死循環(huán)重定向 
          177.   * 所以單獨(dú)寫成一個(gè)請(qǐng)求方法 
          178.   * 比如現(xiàn)在請(qǐng)求的url為:http://localhost:8080/demo/index.jsp 
          179.   * 返回代碼為302 頭部信息中l(wèi)ocation值為:http://localhost:8083/demo/index.jsp 
          180.   * 這時(shí)httpclient認(rèn)為進(jìn)入遞歸死循環(huán)重定向,拋出CircularRedirectException異常 
          181.   * @param url 
          182.   * @return 
          183.   * @throws CustomException  
          184.   */  
          185.  public String doSpecialRequest(String url,int count,String encoding) throws CustomException{  
          186.   String str = null;  
          187.   InputStream responseStream = null;  
          188.   BufferedReader rd = null;  
          189.   GetMethod getRequest = new GetMethod(url);  
          190.   //關(guān)閉httpclient自動(dòng)重定向動(dòng)能  
          191.   getRequest.setFollowRedirects(false);  
          192.   try {  
          193.      
          194.    this.client.executeMethod(getRequest);  
          195.    Header header = getRequest.getResponseHeader("location");  
          196.    if(header!= null){  
          197.     //請(qǐng)求重定向后的URL,count同時(shí)加1  
          198.     this.doSpecialRequest(header.getValue(),count+1, encoding);  
          199.    }  
          200.    //這里用count作為標(biāo)志位,當(dāng)count為0時(shí)才返回請(qǐng)求的URL文本,  
          201.    //這樣就可以忽略所有的遞歸重定向時(shí)返回文本流操作,提高性能  
          202.    if(count == 0){  
          203.     getRequest = new GetMethod(url);  
          204.     getRequest.setFollowRedirects(false);  
          205.     this.client.executeMethod(getRequest);  
          206.     responseStream = getRequest.getResponseBodyAsStream();  
          207.     rd = new BufferedReader(new InputStreamReader(responseStream,  
          208.                       encoding));  
          209.              String tempLine = rd.readLine();  
          210.              StringBuffer tempStr = new StringBuffer();  
          211.              String crlf=System.getProperty("line.separator");  
          212.              while (tempLine != null)  
          213.              {  
          214.                  tempStr.append(tempLine);  
          215.                  tempStr.append(crlf);  
          216.                  tempLine = rd.readLine();  
          217.              }  
          218.              str = tempStr.toString();  
          219.    }  
          220.      
          221.   } catch (HttpException e) {  
          222.    throw new CustomException(e.getMessage());  
          223.   } catch (IOException e) {  
          224.    throw new CustomException(e.getMessage());  
          225.   } finally{  
          226.    getRequest.releaseConnection();  
          227.    if(rd !=null)  
          228.     try {  
          229.      rd.close();  
          230.     } catch (IOException e) {  
          231.      throw new CustomException(e.getMessage());  
          232.     }  
          233.     if(responseStream !=null)  
          234.      try {  
          235.       responseStream.close();  
          236.      } catch (IOException e) {  
          237.       throw new CustomException(e.getMessage());  
          238.      }  
          239.   }  
          240.   return str;  
          241.  }  
          242.    
          243.    
          244.    
          245.    
          246.  public static void main(String[] args) throws Exception{  
          247.   HttpRequestProxy hrp = new HttpRequestProxy();  
          248.    Map header = new HashMap();  
          249.          header.put("User-Agent", "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1; QQDownload 1.7; .NET CLR 1.1.4322; CIBA; .NET CLR 2.0.50727)");  
          250.   String str = hrp.doRequest(  
          251.     "http://www.cma-cgm.com/en/eBusiness/Tracking/Default.aspx?BolNumber=GZ2108827",  
          252.      null, header,null);  
          253.   System.out.println(str.contains("row_CRXU1587647"));  
          254. //  System.out.println(str);  
          255.  }  
          256.      

          posted @ 2014-02-26 18:08 ZT文萃 閱讀(350) | 評(píng)論 (0)編輯 收藏

          轉(zhuǎn)載自:
          http://www.cnblogs.com/happyPawpaw/archive/2013/03/27/2984023.html

          現(xiàn)提供兩種方法: 
          方法一: 
          如果你用過(guò)Toolkit(java.awt.Toolkit)類,這將是一件很簡(jiǎn)單的事情: 
          Toolkit tk=Toolkit.getDefaultToolkit() 
          Image image=tk.createImage("image.gif"); /*image.gif是你的圖標(biāo)*/ 
          this.setIconImage(image); 

          注意:這個(gè)圖標(biāo)一定要是好用的圖標(biāo)。

          就這么簡(jiǎn)單,看看,已經(jīng)變成你自己的圖標(biāo)了。Toolkit是個(gè)很有用類的,提供很多對(duì)窗口默認(rèn)行為的修改,下面隨便提一下,怎么把默認(rèn)的鼠標(biāo)圖標(biāo)改成你自己的圖標(biāo): 
          Toolkit tk=Toolkit.getDefaultToolkit(); 
          Image img=tk.getImage("mouse.gif"); /*mouse.gif是你的圖標(biāo)*/ 
          Cursor cu=tk.createCustomCursor(img,new Point(10,10),"stick"); 
          this.setCursor(cu); 

          方法二: 
          用到ImageIcon類和setIconImage方法。 
          import javax.swing.*; 
          public class A extends JFrame { 
              String image = new String("face.gif"); //建立一個(gè)字符串保存要用的圖標(biāo)的路徑,關(guān)于java的路徑請(qǐng)參考其它文檔 
              ImageIcon test = new ImageIcon(image); //建立一個(gè)ImageIcon類,產(chǎn)生setIconImage()方法需要的Image數(shù)據(jù) 

              public A() { 
                  super("演示自定義標(biāo)題欄的圖標(biāo)的方法"); 
                  this.setIconImage(test.getImage()); //設(shè)置標(biāo)題欄的圖標(biāo)為face.gif 
                  this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);        
                  this.show(); 
                  //this.setTitle("sdfsdf"); 
                  this.setSize(400,200); 
              } 
              public static void main(String[] args) { 
                  A jIcon = new A();       
              } 


          此法本人再次簡(jiǎn)化為兩條語(yǔ)句: 
          import javax.swing.*; 
          public class A extends JFrame { 
              ImageIcon test = new ImageIcon(new String(face.gif));//第一句 
              public A() { 
                  super("演示自定義標(biāo)題欄的圖標(biāo)的方法"); 
                  this.setIconImage(test.getImage()); //第二句 
                   this.setSize(400,200); 
                  this.show(); 

              public static void main(String[] args) { 
                  A jIcon = new A();       
              } 
          }

          posted @ 2014-02-21 10:13 ZT文萃 閱讀(246) | 評(píng)論 (0)編輯 收藏

          轉(zhuǎn)載自:
          http://www.sbanzu.com/topicdisplay.asp?BoardID=8&Page=9&TopicID=4112790

          照片中的柴靜雖然身材明顯發(fā)福,但仍可見昔日“女神”風(fēng)采。據(jù)知情人透露,柴靜私下從不主動(dòng)談及私生活,特別是在結(jié)婚消息曝光后,讓她對(duì)隱私更加保護(hù)。至于其老公趙嘉,如今在央視下屬一家公司擔(dān)任首席財(cái)政官,同時(shí)繼續(xù)從事攝影事業(yè)。


          被坊間傳聞為“央視最窮主持人”的柴靜被爆在去年10月赴美國(guó)產(chǎn)下一女,升級(jí)當(dāng)媽。此外,她為女兒取名叫柴知然,柴靜曾私下表示希望女兒不僅“知然”,且能“知其所以然”。



          不管公知還是五毛,都把后代往洋大人那里放。批評(píng)這個(gè)體制的,吹捧這個(gè)體制的,都選擇把娃兒生在美國(guó)。這才是真正的普世價(jià)值啊,無(wú)關(guān)身份,無(wú)關(guān)制度,無(wú)關(guān)膚色,無(wú)關(guān)民族,只有對(duì)孩子絕對(duì)的愛,以及與孩子有關(guān)的自由向往。

          @十年砍柴 :公知和五毛理應(yīng)都為柴靜在美國(guó)產(chǎn)女感到高興。所謂公知當(dāng)然賀其為孩子選擇了含金量高的國(guó)籍。而愛國(guó)的五毛,應(yīng)慶祝她的女兒將來(lái)沒有強(qiáng)大的中國(guó)庇護(hù),而且為自己的兒女騰出在中國(guó)的空間,替自己兒女省下社會(huì)撫養(yǎng)費(fèi)。

          @劉桂娟: 我認(rèn)識(shí)的很多精英和條件優(yōu)越的人都選擇在美生孩子,將來(lái)孩子不用付出幾百萬(wàn)的留學(xué)費(fèi)用,18歲后有選票。我一移民澳洲的朋友,兩個(gè)孩子免費(fèi)上學(xué),她經(jīng)常回國(guó)看父母,每到選舉時(shí)必回澳洲,驕傲的說(shuō):我去投票!我都沒見過(guò)咱們的選票長(zhǎng)什么樣

          @沁水一波:柴靜在美國(guó)生孩子真是她個(gè)人的事,勿須責(zé)怪。讓人不舒服的是以前高調(diào)深愛中國(guó)的她用腳表明她的愛并不深。記得知青下放時(shí)叫的最響要扎根農(nóng)村的人往往是溜的最快的。不高調(diào)就不行嗎?此事讓人不適應(yīng)的是語(yǔ)言和行動(dòng)的反差,而不是在美國(guó)生孩子這事。

          @木子老龍 :柴靜把孩子生在美國(guó),司馬南把孩子送到美國(guó),無(wú)論政見如何,在愛自己的孩子這一點(diǎn)上,方向是高度一致的。什么叫普世價(jià)值?這就是普世價(jià)值。

          @奮壹:在推特上看到一個(gè)神評(píng):看到柴靜美國(guó)產(chǎn)女的新聞,不勝唏噓,不管是民主派還是自由派,最后都是美國(guó)派。好不容易有個(gè)深深的愛著這片土地的國(guó)師張藝謀把孩子生在國(guó)內(nèi),還被計(jì)生委罰得稀里嘩啦。

          @王鵬律師 :以前覺得她很高尚,媒體屆最具良心的代表之一,現(xiàn)發(fā)現(xiàn)她很務(wù)實(shí),沒有拿女兒的未來(lái)做賭博。作為父母,從子女幸福的角度出發(fā)本身沒有什么錯(cuò),也不能指責(zé)她的選擇。該反思的問題是為什么這么多精英去國(guó)外生子,享有外國(guó)戶籍? 中國(guó)到底哪里有問題?

          奇葩國(guó)家啊,愛他和恨他的人都要做他敵人的爹媽。
          基本上,就算未來(lái)中國(guó)富裕民主發(fā)達(dá)了,那些特權(quán)移民同樣可以依靠特權(quán)設(shè)法回來(lái)。比如現(xiàn)在那些拿著美國(guó)綠卡乃至國(guó)籍卻可以賴在中國(guó)摟錢的特權(quán)分子就是如此(無(wú)論他們嘴巴里喊的是普世價(jià)值還是共產(chǎn)主義,被人稱作公知還是走狗,本質(zhì)上都是一樣的)。

          后悔的最多不過(guò)是那些普通移民罷了。也不用等將來(lái),現(xiàn)在就有。

          中國(guó)盡出漢奸,這倒是沒跑的

          posted @ 2014-02-21 06:46 ZT文萃 閱讀(221) | 評(píng)論 (0)編輯 收藏

           

          http://wangguanxiong.baijia.baidu.com/article/4681

           

          創(chuàng)辦5年、50個(gè)人的小公司值160億美元!

          是FaceBook瘋了還是你不夠“瘋”?

          【巨頭狂野搏命移動(dòng)端】

          今晨重磅消息,美國(guó)社交網(wǎng)絡(luò)老大Facebook收購(gòu)WhatsApp,一個(gè)員工50人、其中32名是工程師的 小公司。為此,F(xiàn)acebook付出了總金額160億美元“現(xiàn)金+股票”的昂貴代價(jià)。此外,還承諾給創(chuàng)始人團(tuán)隊(duì)30億美元的四年行權(quán)限制股,加上期權(quán)交易 規(guī)模將達(dá)190億美元。

          WhatsApp是一個(gè)跨平臺(tái)通訊應(yīng)用,創(chuàng)辦于2009年。界面樸素簡(jiǎn)潔,沒有任何花哨的功能,核心功能就是幫助用戶收發(fā)消息。簡(jiǎn)單說(shuō),有點(diǎn)像簡(jiǎn)化版的微信。

          目前其月活躍用戶達(dá)4.5億(其中70%每天登錄),每天新增用戶100萬(wàn),每天發(fā)送消息達(dá)到全球電信的短信數(shù)量,每天有10億張照片、2億條音頻消息、1億條視頻消息通過(guò)該軟件傳輸。

          因此,這對(duì)致力于“連結(jié)人與信息”的Facebook來(lái)說(shuō),是一個(gè)極大威脅。很簡(jiǎn)單,要么戰(zhàn)勝你,要么買下你。這和臉譜2012年收購(gòu)圖片分享應(yīng)用Instagram的邏輯一致,在社交網(wǎng)絡(luò)這個(gè)核心領(lǐng)域,臉譜絕不會(huì)允許他人染指。

          更重要的是,從WhatsApp、Instagram到最近風(fēng)靡美國(guó)年輕人的snapshot,都是為移動(dòng)而生的應(yīng)用。實(shí)際上,移動(dòng)互聯(lián)網(wǎng)的發(fā)展速度遠(yuǎn)遠(yuǎn)超過(guò)桌面互聯(lián)網(wǎng),巨頭們正瘋狂地買公司、買人,否則一不小心就會(huì)被干掉。

          【每個(gè)員工值20億】

          然而,在這筆轟動(dòng)全球的交易中,真正讓我激動(dòng)的是人的價(jià)值。

          即使不包含30億美元的期權(quán)價(jià)值,僅按立即支付的160億美金收購(gòu)價(jià)計(jì)算,按最新匯率,WhatsApp一個(gè)員工值20億人民幣,20億!

          兩年前,當(dāng)FaceBook斥資10億美金收購(gòu)只有13個(gè)人的Instgram時(shí),他們?cè)撎幍膬r(jià)格是一個(gè)人大約一億美金。現(xiàn)在,價(jià)格翻了3倍。

          這對(duì)一直重視“看得見的資產(chǎn)”的中國(guó)人來(lái)說(shuō),幾乎是不可想象的。許多傳統(tǒng)老板會(huì)想,就這么幾個(gè)小屁孩敢要幾十億美金,瘋了?這種思維定勢(shì)有時(shí)很難扭轉(zhuǎn),看走眼的還包括現(xiàn)在如日中天的騰訊CEO馬化騰。

          當(dāng)年,Instagram估值還不到1億美金時(shí)騰訊曾有機(jī)會(huì)投資。當(dāng)時(shí)Instagram只有幾個(gè)人,在一個(gè)靠 近海邊的房子辦公。就是一層玻璃,外面都看得見,扔個(gè)磚頭就可以把里面的電腦全拿走了。騰訊某副總裁看著說(shuō),這個(gè)公司不太靠譜吧,才幾個(gè)人。后來(lái),騰訊不 得不估值8億美金時(shí)跟投。

          這就是人的價(jià)值,只要擁有創(chuàng)新能力的人做出一個(gè)創(chuàng)新產(chǎn)品,他們足以撬動(dòng)整個(gè)地球。

          【人是科技第一生產(chǎn)力】

          NOP男裝創(chuàng)始人劉爽認(rèn)為管理分為兩種:管人管事,選擇哪種不取決于領(lǐng)導(dǎo)者意志,而取決于企業(yè)行業(yè)類型。管事型 企業(yè)的代表是制造業(yè)和零售業(yè),比如富士康和沃爾瑪,人人都是螺絲釘,不需要你創(chuàng)新,需要的是你的執(zhí)行效率。而管人型企業(yè)的代表是高科技和互聯(lián)網(wǎng),比如微軟 和谷歌,其產(chǎn)品和服務(wù)的研發(fā)改良依賴于員工個(gè)人的創(chuàng)造力創(chuàng)新力。

          如果想做一個(gè)產(chǎn)品服務(wù)高度依托互聯(lián)網(wǎng)經(jīng)濟(jì)和體驗(yàn)經(jīng)濟(jì)的軟硬件一體式品牌公司,那就應(yīng)該選擇管人和眾智。落到具體就是有邊界的制度,無(wú)邊界的溝通。

          當(dāng)年,鄧小平同志以無(wú)畏的政治勇氣和理論高度,說(shuō)出了一句名言:“科技是第一生產(chǎn)力”。這句話,激勵(lì)了整整幾代中國(guó)人。它讓人們看到了科技的價(jià)值、知識(shí)的價(jià)值,也是現(xiàn)在長(zhǎng)盛不衰的知識(shí)經(jīng)濟(jì)的動(dòng)力。

          現(xiàn)在,我想說(shuō):人是科技的第一生產(chǎn)力。不重視人的價(jià)值,不尊重人的需求,不解放人的生產(chǎn)力,必將被互聯(lián)網(wǎng)時(shí)代快速淘汰。

          請(qǐng)捫心自問。

          (更多深度,掃描下方二維碼后看歷史文章)

          作者簡(jiǎn)介:一個(gè)IPO專業(yè)戶、超級(jí)自媒體。我信仰互聯(lián)網(wǎng),因?yàn)樗鼘?shí)現(xiàn)了人和一切的自由連接,這是3代人必經(jīng)的命運(yùn)。微博@互聯(lián)網(wǎng)信徒王冠雄,微信wang-guanxiong。見人所之未見,每一條都對(duì)得起關(guān)注!

          posted @ 2014-02-21 06:12 ZT文萃 閱讀(199) | 評(píng)論 (0)編輯 收藏

          轉(zhuǎn)載自:
          http://blog.csdn.net/haoren_e/article/details/6043645


               在linux上部署項(xiàng)目的時(shí)候,我們往往通過(guò)一段shell來(lái)啟動(dòng)程序,甚至是通過(guò)crontab定時(shí)任務(wù)來(lái)定時(shí)的調(diào)用java程序,但是很奇怪的一個(gè)問題就是,比如我寫了一個(gè)如下的shell腳本:

           

          1. #!/bin/sh  
          2. # -----------------------------------------------------------------------------  
          3. # Start script for the CMGP BOSSCONTROL   
          4. #  
          5. # $Id: run_bosscontrol.sh,v 1.0 2007/11/06 Exp $  
          6. # -----------------------------------------------------------------------------  
          7. #指定字符集  
          8. LANG=zh_CN.GBK export LANG  
          9. RUN_HOME=.  
          10. CLASSPATH=$CLASSPATH:$RUN_HOME/lib/checking.jar  
          11. CLASSPATH=$CLASSPATH:$RUN_HOME/lib/ojdbc14.jar  
          12. CLASSPATH=$CLASSPATH:$RUN_HOME/lib/commons-dbutils-1.1.jar  
          13. CLASSPATH=$CLASSPATH:$RUN_HOME/lib/log4j-1.2.14.jar  
          14. CLASSPATH=$CLASSPATH:$RUN_HOME/lib/dom4j-1.6.jar  
          15.   
          16. export CLASSPATH  
          17.   
          18. java  com.**.checking.Checking_Start >> log.out &   
           

           

          手動(dòng)命令行運(yùn)行該腳本的時(shí)候,可以正常運(yùn)行java程序,但是使用crontab定時(shí)任務(wù),貌似就不起效果了,很是郁悶?zāi)模樵蚰模治隹赡茉颍?/span>

           1)是否當(dāng)前用戶對(duì)此shell腳本沒有可執(zhí)行權(quán)限,通過(guò)ls -lrt /apps/service/mtk/checking/run.sh查看腳本是有可執(zhí)行,但是有執(zhí)行權(quán)限呀-rwxr-xr-x

           2)既然單獨(dú)運(yùn)行腳本沒問題,那會(huì)不會(huì)是定時(shí)的問題呢?于是寫了一個(gè)簡(jiǎn)單的輸出的shell腳本通過(guò)定時(shí)也是沒問題的。說(shuō)明還是腳本的問題。

          后來(lái)上網(wǎng)查了下,想到可能是腳本中環(huán)境變量的原因,因?yàn)橥ㄟ^(guò)crontab運(yùn)行腳本,是以root用戶,而不是當(dāng)前用戶,于是cat /etc/profile查看環(huán)境變量,然后修改腳本如下:

          1. #!/bin/sh  
          2. # -----------------------------------------------------------------------------  
          3. # Start script for the CMGP BOSSCONTROL   
          4. #  
          5. # $Id: run_bosscontrol.sh,v 1.0 2007/11/06 Exp $  
          6. # -----------------------------------------------------------------------------  
          7. export PATH=/apps/usr/java/jdk1.5/bin:$PATH  
          8. export JAVA_HOME=/apps/usr/java/jdk1.5  
          9. export JRE_HOME=/apps/usr/java/jdk1.5/jre  
          10. export CLASSPATH=/apps/usr/java/jdk1.5/lib:/apps/usr/java/jdk1.5/jre/lib:$CLASSPATH  
          11. RUN_HOME=/apps/service/checking  
          12. CLASSPATH=$CLASSPATH$RUN_HOME/lib/checking.jar  
          13. CLASSPATH=$CLASSPATH:$RUN_HOME/lib/ojdbc14.jar  
          14. CLASSPATH=$CLASSPATH:$RUN_HOME/lib/commons-dbutils-1.1.jar  
          15. CLASSPATH=$CLASSPATH:$RUN_HOME/lib/log4j-1.2.14.jar  
          16.  CLASSPATH=$CLASSPATH:$RUN_HOME/lib/dom4j-1.6.jar  
          17.   
          18. export CLASSPATH=$CLASSPATH  
          19.   
          20. java  com.**.checking.Checking_Start >> log.out &   

           

          export顯示導(dǎo)出為用戶環(huán)境變量的環(huán)境變量
          以上這種jar包是通過(guò)eclipse工具export導(dǎo)出,不包含MANIFEST.MF文件,如果使用打包工具Ant,我們可以在打包默認(rèn)的build.xml文件中設(shè)置Class-Path
          將第三方j(luò)ar包加入manifest.mf文件中,且指定程序主類
          在build.xml中添加如下內(nèi)容:

           

          1. <!-- create a property containing all .jar files, prefix lib/, and seperated with a space -->  
          2. <pathconvert property="libs.project" pathsep=" ">  
          3.    <mapper>  
          4.       <chainedmapper>  
          5.         <!-- remove absolute path -->  
          6.         <flattenmapper />  
          7.        <!-- add lib/ prefix -->  
          8.        <globmapper from="*" to="lib/*" />  
          9.       </chainedmapper>  
          10.     </mapper>  
          11.      <path>  
          12.       <!-- lib.home contains all jar files, in several subdirectories -->  
          13.       <fileset dir="${lib.dir}">  
          14.        <include name="**/*.jar" />  
          15.       </fileset>  
          16.      </path>  
          17.   </pathconvert>  

           

          另外,在create manifest文件時(shí),加上:

          1. <!-- 這樣就可以將第三方j(luò)ar包加入 -->   
          2. <attribute name="Class-Path" value="${libs.project}" />  
          3. <!-- 程序運(yùn)行的主類 -->  
          4. <attribute name="Main-Class" value="com.**.checking.Checking_Start " />  

           

          這樣運(yùn)行ant,打成的jar包中MANIFEST.MF中內(nèi)容如下:

          1. Manifest-Version: 1.0  
          2. Ant-Version: Apache Ant 1.7.0  
          3. Created-By: 1.5.0_09-b01 (Sun Microsystems Inc.)  
          4. Implementation-Title: fee task  
          5. Implementation-Version: 1.0  
          6. Implementation-Vendor: Aspire  
          7. Main-Class: com.aspire.cmgp.flowcontrol.server.FlowControlServer  
          8. Class-Path: lib/cmgp-util-1.0.1.jar lib/commons-codec-1.3.jar lib/comm  
          9.  ons-collections.jar lib/commons-dbcp-1.2.1.jar lib/commons-httpclient  
          10.  .jar lib/commons-logging.jar lib/commons-pool-1.2.jar lib/dom4j.jar l  
          11.  ib/log4j.jar lib/ojdbc14.jar  

           

          這樣在shell腳本中就不需要指定程序所需要的jar包了,也就不存在環(huán)境變量設(shè)置的惱人問題。比較正規(guī)的也是這么操作的。
          這樣在shell中就直接運(yùn)行jar包就行了:java -jar 主程序.jar -Xmx1024m -Xms1024m -Xmn512m,多好多方便~

          posted @ 2014-02-20 11:25 ZT文萃 閱讀(642) | 評(píng)論 (0)編輯 收藏

          主站蜘蛛池模板: 铜山县| 台山市| 房山区| 东莞市| 秦安县| 巧家县| 郎溪县| 同仁县| 抚宁县| 浦东新区| 榕江县| 景宁| 永年县| 景泰县| 紫阳县| 民和| 延长县| 南郑县| 隆安县| 成武县| 休宁县| 华池县| 农安县| 中卫市| 会昌县| 曲靖市| 云和县| 镇安县| 鸡泽县| 含山县| 武宣县| 昌平区| 垣曲县| 米易县| 织金县| 贵南县| 南涧| 教育| 剑川县| 凤翔县| 比如县|