<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    posts - 189,comments - 115,trackbacks - 0

    Java6印象:桌面應(yīng)用勝出者

    ???????? Java beta已經(jīng)發(fā)布了,雖然離正式的FCS還有一段時間,一個朋友還是急不可耐地下載了Java6進行試用,他認為Java6將會給Java桌面開發(fā)帶來革命性的變化。

    ???????? 最近發(fā)版的Java6(Mustang)beta是功能齊全足夠穩(wěn)定的版本,我下載并在第一周測試了這一版,我尤其被它的桌面功能所吸引,除了命名習慣改變了(2不再Java SE中出現(xiàn)),在許多新功能上都值得探索。改進總的來說分為兩類:桌面開發(fā)和內(nèi)核。

    ???????? 桌面開發(fā)改進主要體現(xiàn)在用戶界面(UI)效率以及本地操作系統(tǒng)桌面集成上。核心改進主要集中在增加開發(fā)效率和Java應(yīng)用管理上。Sun的Mustang開發(fā)小組對Web服務(wù)和安全改進做了很多重要的努力。

    ???????? 總的來說,不管你是應(yīng)用開發(fā)者、系統(tǒng)管理員、工具提供商或者安全專家,Java6都為你提供你想要的。本文描述了一些我用過的有趣新功能。

    內(nèi)核功能和改進

    ???????? Java內(nèi)核是Java的幾個部分,包括語言和工具,這些是Java其他方面的基礎(chǔ),從用戶界面API到服務(wù)類庫。下面我細分小類描述Java內(nèi)核以及Java6的改進。

    開發(fā)效率

    ???????? 新的Java編譯器API允許在Java應(yīng)用程序中編譯Java代碼。在編譯的時候,應(yīng)用程序能夠訪問格式化的類庫依賴信息、警告信息、錯誤信息以及編譯中產(chǎn)生的其他消息(該功能已經(jīng)被netbeans6.0集成進去,實現(xiàn)新的Javac API,并籍此提高錯誤信息的提示)。盡管此項功能我不會經(jīng)常用到,但是我已經(jīng)發(fā)現(xiàn)它的新用處了。比如,用它為應(yīng)用程序數(shù)據(jù)庫迅速生成數(shù)據(jù)訪問層。我寫的代碼生成并編譯訪問應(yīng)用程序數(shù)據(jù)庫的類,最終生成jar文件,這些jar文件產(chǎn)生、生成之后作為系統(tǒng)的一部分部署到Ant腳本中。在應(yīng)用程序中生成并編譯使得代碼生成變得可以互動起來,我可以不斷修改并反復(fù)生成這些類。

    ???????? 為使用Java的腳本功能,Java6支持了JSR223,JSR223提供腳本語言訪問Java內(nèi)部的框架,你可以在運行時定位并啟動腳本引擎來運行你指定的腳本。另外,Web腳本框架還允許腳本在任何Servlet容器內(nèi)生成Web頁面。

    ???????? 對于調(diào)試來說,Java平臺調(diào)試接口(JPDA)增強了檢測死鎖以及為被鎖定監(jiān)控對象產(chǎn)生堆棧跟蹤的功能。此外,Java6添加了允許客戶程序attach到一個正在運行的虛擬機進行診斷的功能。

    應(yīng)用程序管理

    ???????? Java6增強了內(nèi)存泄漏分析和檢測,在java.lang.OutOfMemory異常中包含了所有跟蹤棧的信息,并能當堆棧溢出時時產(chǎn)生致命錯誤的日志。另外,增添了一個新的虛擬機選項允許你當堆棧溢出時調(diào)用某段腳本。

    ???????? JMX監(jiān)控API的增強允許應(yīng)用程序在MBean屬性值(包括那些包含在復(fù)雜類型內(nèi)的)超出臨界值時發(fā)送事件消息。

    ???????? 對于Solaris10用戶,Solaris的Hotspot JVM為Solaris的DTrace系統(tǒng)調(diào)試工具提供鉤子來追蹤和顯示虛擬機內(nèi)部活動,比如垃圾收集器、類加載、線程、鎖等等。參加JavaOne大會時,我觀看此項功能的演示,深深被DTrace工具調(diào)試的深度所吸引。應(yīng)用程序運行時,DTrace允許你在任何地方中斷代碼的運行,查看所有加載的庫(不僅僅是Java類庫,還包含系統(tǒng)類庫),跟蹤到Solaris內(nèi)核直至硬件!Java提供的這個令人驚訝的新工具讓系統(tǒng)調(diào)試成為可能。我現(xiàn)在還記得過去經(jīng)常會遇到虛擬機中報出Solaris Signal-8的錯誤,此新功能能幫我一探究竟。

    Web服務(wù)

    ????????? Java6包含了一些新的API來支持Web服務(wù)。XML數(shù)字簽名API允許你對XML數(shù)據(jù)進行加密,從而安全地使用基于Java的Web服務(wù),Java-XML Web服務(wù)(JAX-WS)2.0 API更新了以前稱作JAX-RPC的接口。Java-XML綁定(JAXB)2.0的增強包括XML Schecma支持以及將類直接綁定到Schema上。最后,XML流API(STaX)提供了雙向應(yīng)用程序接口通過事件流來讀寫XML,包括跳過某些部分,只處理于文檔的某些部分。

    安全

    ????????? Java6的安全包括GSS/Kerberos集成,LDAP認證的Java認證及授權(quán)服務(wù)(JAAS),允許Java應(yīng)用程序通過多種協(xié)議請求安全證書的安全證書請求框架。

    桌面功能和改進

    ???????? 很長一段時間內(nèi)Java被認為是優(yōu)秀的服務(wù)器段軟件語言,而在桌面GUI應(yīng)用方面被認為是次等公民。Sun的Java桌面開發(fā)小組一直致力于改變這種看法,將Java同本地操作系統(tǒng)更緊密的集成,結(jié)果在Java6中不僅提高了用戶界面效率,還改進了Java GUI應(yīng)用程序的表現(xiàn)。

    ???????? Java6的許多新的桌面功能基于JDIC項目,JDIC項目讓Java應(yīng)用程序可以訪問本地操作系統(tǒng)的許多功能,比如瀏覽器、email編輯器、文件類型關(guān)聯(lián)、系統(tǒng)托盤、應(yīng)用程序啟動以及打印等等。下面是Java6在桌面開發(fā)上的明顯改進:

    啟動畫面支持

    ???????? 啟動畫面告訴用戶等待應(yīng)用程序啟動。Java6甚至提供了在虛擬機啟動之前展現(xiàn)啟動畫面的支持。

    Java基礎(chǔ)類(JFC)以及Swing改進

    ???????? Java6調(diào)整了Windows API,使Swing既提高了運行速度,又保證了當前Windows版本的Windows外觀。

    • 增強了布局管理器,加入了自定義布局管理器以及其他簡化界面組件的布局器。
    • 極大的增強了Swing的drag-and-drop功能,使其更加靈活。
    • 真雙緩沖機制提供了快速平滑的界面切換。
    • 系統(tǒng)托盤支持,在java.awt中增添了兩個新類SystemTray和TrayIcon,允許你在Windows和Gnome Linux系統(tǒng)托盤上添加圖標、tool tips、以及彈出菜單。系統(tǒng)托盤是所有應(yīng)用程序共享的桌面領(lǐng)域,通常位于桌面的左下角,動作事件允許Java應(yīng)用程序跟蹤你放入托盤上圖標鼠標點擊事件。我發(fā)現(xiàn)這個新功能對我的服務(wù)器端程序也有用,比如和下文所提到的Desktop API結(jié)合使用能容易地為應(yīng)用程序管理員啟動管理頁面瀏覽器。不管是什么操作系統(tǒng)(Linux還是Windows),我不再需要記住應(yīng)用程序管理端口或者URL,只需要點擊圖標,頁面就出現(xiàn)了。
    • JTable的增強打印的支持。
    • Java2D的增強:增強了文本顯示質(zhì)量,特別是在液晶(LCD)顯示器上,同本地桌面字體反走樣設(shè)置集成確保了文本顯示的一致性。
    • 新的java.awt.Desktop的API:Java6新的Desktop包目的是使Java用戶界面程序成為一等公民。使用該包,Java應(yīng)用程序能夠啟動缺省的瀏覽器和電子郵件客戶端,并且和普通桌面應(yīng)用程序(比如OpenOffice)集成,能夠打開、編輯并且打印特定類型的文件。Desktop包通過動作事件(Desktop.Action)來提供此項功能,讓你能集成到你的應(yīng)用系統(tǒng)中。

    國際化

    ?????????? Java6為某些格式支持可插拔式支持,比如日期格式化、Unicode文本標準化以及資源bundle。

    ???????? Java6有可能使Java桌面應(yīng)用產(chǎn)生革命的變化,就像java 2曾經(jīng)產(chǎn)生的服務(wù)器端革命一樣。我們最好為這場風暴做好準備,為早期投入Java桌面市場得到的報償擺好姿態(tài)。

    posted on 2007-03-30 20:32 MEYE 閱讀(682) 評論(0)  編輯  收藏

    只有注冊用戶登錄后才能發(fā)表評論。


    網(wǎng)站導(dǎo)航:
     
    主站蜘蛛池模板: 久久亚洲国产精品123区| 免费国产va在线观看| 国产亚洲精品成人AA片新蒲金| www.免费在线观看| 你是我的城池营垒免费看| 久久久久亚洲AV无码去区首| 亚洲综合小说久久另类区| 911精品国产亚洲日本美国韩国 | 亚洲国产美女视频| 亚洲热妇无码AV在线播放| 又粗又硬又黄又爽的免费视频| 国产精品视频免费一区二区| 一级毛片成人免费看免费不卡| 中文字幕不卡高清免费| 未满十八私人高清免费影院| 综合偷自拍亚洲乱中文字幕| 亚洲精品V天堂中文字幕| 亚洲男人天堂2022| 亚洲熟妇无码一区二区三区| 亚洲免费中文字幕| 亚洲AV综合色区无码二区偷拍| 久久精品国产亚洲AV无码麻豆| 亚洲AV人无码激艳猛片| 亚洲国产一区二区a毛片| 久久久综合亚洲色一区二区三区| 亚洲中文字幕无码一区二区三区| 一级毛片直播亚洲| 亚洲精品第一国产综合境外资源| 全亚洲最新黄色特级网站 | 美女露隐私全部免费直播| 亚洲精华国产精华精华液| 亚洲AV性色在线观看| 久久久久久久久无码精品亚洲日韩| 亚洲精品无码mⅴ在线观看| 免费a级毛片无码a∨性按摩| 欧洲精品免费一区二区三区| 国产精品自在自线免费观看| 国产成人一区二区三区免费视频| 免费国产高清视频| 亚洲午夜福利精品久久| 亚洲五月综合缴情在线观看|