2010年7月26日 星期一

部份Java技術的素描

http://ender110.blogbus.com/logs/4112843.html

    學了Java這麼久了,感覺起來就是累,不是因為學習上的勞累,而是一種匆忙追趕的勞累。 Java世界的變化真是太快了,誇張一點說,前一天你覺得什麼都會了,當你第二天一覺醒來就會發現說不上從哪又飛出了一個新名詞。 用老崔的一句話來表達此時的心裡是最恰當的了:“不是我不明白,這世界變化得太快。


    也許你已經學了很常時間的Java了,也許你現在正想學習Java,無論怎樣,還是讓我們先停下來整理一下Java雜亂的名詞吧,這些名詞術語就像一張無 邊 無際的網,我們輕易地就會被困在網中央,為了使我們不至於越陷越深越迷惘,路越走越遠越漫長,我們只有逐個擊破,一一搞懂,這樣才會前途一片光亮嘛。


    第一個出場的是誰? 當然是Applet啦。 它是什麼東東? 可能許多人都聽說過了,Applet就是嵌入到Web網頁中的一段Java代碼。 這是最初的動態網頁技術,是用來活躍氣氛的,許多人都用它來畫一副漂亮的圖來活躍一下自己的網頁,高手們用它來進行一些遠程事務等等。 不過現在它有點受冷落了,原因是Flash、DHTML、ASP、JSP們強佔了它的一大部分地盤,它勢單力薄,唉,只有聽從命運的安排了。


    第二個出場的當然是Applet的姊妹了,她就是Servlet Servlet就是為了增強Web Server的能力在Web Server 上運行的一個java小程序,Servlet用一個java的特定方案代替了其它一些服務器方編程技術,如:CGI、ISAPI、NSAPI等等。 由於客戶端仍使用瀏覽器,所以Servlet不需重新定義通訊協議,她直接使用HTTP協議。 由於她的身段不肥也不瘦並且編譯後的代碼速度也不錯,現在她正受歡迎著呢。


    (正說著,JSP急不可待得衝了出來……),哦,因為她覺得自己比Servlet強。 JSP就是Java Server Page,他是將Java代碼嵌入到HTML文檔之中形成的一種頁面,這個頁面由Java服務器執行生成最終的客戶端的純的HTML頁面。 其實,大家可能早已經熟悉了幾年前流行的微軟的ASP技術,他倆原理上是一樣的,只不過是ASP中使用VBScript,並且由服務器解釋執行,而JSP使用的是Java,優點自然是繼承了許多Java的優點了,如:垃圾回收、其它的企業技術等等。 另外,JSP在第一次執行時被編譯,以後再執行時執行的就是編譯後的代碼了,所以他的另一個優點就是速度上要快一些了。


    下一個閃亮登場的是EJB(掌聲四起),哇,他確實是個大明星,很紅的。 他是何許人? 聽我慢慢道來,EJB就是Enterprise Java Beans,他是服務器組件的標準,他的出現的目的就是為了對創建分佈式、物件導向應用程序組件定義一個統一、標準的方法,使創建網絡能動性程序變得簡單一點。 大家千萬不要把他與Java Beans 搞混了,他們是兩回事,Java Beans是為了一般應用程序組件定義了標準的接口。 但是,有時一個程序可能使用EJB和Java Beans兩種技術,因為它可以是一個程序的服務器同時又是另一個程序的客戶。


    該JDBC出場了,他的牌子比較老,認識他的人也比較多。 JDBC就是Java Database Connectivity,他是一組應用程序接口,定義了一個訪問數據庫(主要指關係型數據庫)的標準的Java庫。 因為許多企業開發者都有應用程序訪問數據庫的需求,所以Sun公司的JavaSoft小組開發了JDBC。 這樣,數據庫系統開發商提供數據源驅動程序就有了一個標準的結構,並且這些驅動程序允許Java程序直接訪問其相應的數據庫產品。


    下一個出場的是JNDI Internet 和Intranet在很大的程度上依賴命名和目錄服務來訪問網絡資源,這種服務使得一些關於用戶、機器、其它網絡服務以及遠程應用程序的信息得到了網絡級的共享。 JNDI即Java Naming and Directory services Interface,他是一組API,其定義了訪問諸如DNS、LDAP、RMI等命名和目錄服務的一種標準的Java方法。 他的功能非常強大,因為他通過單獨的一套API可以訪問各種各樣的服務,其作用在應用中不容忽視。