程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> JAVA編程 >> J2EE >> Java+Flex打造完美RIA應用

Java+Flex打造完美RIA應用

編輯:J2EE

漂亮的圖形和用戶界面是豐富的互聯網應用程序(RIA應用)的最明顯的特征。但是側重於外表,忽略一個重要的客客戶端功能:豐富的數據;Java+Flex無疑是解決這一問題的完美方案。

能夠在客戶端迅速的過濾和排序數千行的數據,比如,可以在業務應用上提供更好的體驗,而不是花費時間翻閱幾十行的數據。或者,允許用戶快速可視化數據的交互式圖表,可以證明這比讓一個用戶從服務器上閱讀靜態圖表有效得多。

如此的交互式體驗是有可能實現的,因為豐富的客戶端技術有能力有效的從服務器上面獲取大量的相關數據,以及在客戶端的地址空間執行與顯示相關的處理。另外,一個豐富的客戶端可以從多個服務器應用中獲取數據,得到一個混合的結果。

逐步加強

逐步加強,這個術語是由Steven Champeon 創造的,指的是能夠一步一步的改進傳統能力,Web 1.0風格的應用程序,伴隨著豐富的客戶端功能:代替必須要批發購買豐富的客戶端技術,這就有可能在客戶端引進一種更好的用戶體驗,而不需要大幅度的改寫。在這個系列的另一端,當與應用程序的架構深度結合的時候,一個豐富的客戶端技術需要提供某種能力來實現最大程度的客戶端利用,比如,利用本地圖形加速或者客戶端環境的多核CPU架構。

一個分析豐RIA應用的方法就是研究將它們引進到現有的企業級應用程序中的難易度。Flex,Adobe的開源豐富客戶端技術,為逐步加強現有的企業級應用提供了很多種可能性。這篇文章介紹了五種技術,開發者可以使用這些技術來改善用戶體驗,現有的企業級Web應用程序的視覺吸引也使用Flex: 程序員常用的Flex代碼總結將一個Flex用戶界面放入到一個現有的HTML頁面中(FlashVars):這種技術需要幾乎沒有改變現有的企業應用,但是可以通過簡單Html提供重要用戶界面的改進。

HTTP數據存取:這種技術設想暴露了企業應用的Flex數據服務的客戶可通過HTTP拜訪。這樣的數據服務可以返回JSON格式的數據。JSON在Java+Flex打造的RIA應用的數據傳送中起到重要作用。

XML 與HTTP:這是早前技術的一個變化,但是在現在的技術下,客戶端可以從服務器存取XML數據,使用Flex的語言級別XML的支持來處理顯示數據。遠程方法調用服務器端Java對象:這項技術依賴於開源BlazeDS遠程架構,為服務器上面Java對象的Flex客戶端的直接參考進行安排。通過HTTP,客戶端—服務器之間的交流仍然可以進行,使得這項技術適用於與安全的企業應用防火牆相互配合。

分布式信息:Flex的遠程方法調用是基於一種普遍的Flex信息框架。這種框架可以被用來推動服務器端的數據到Flex客戶端,並且對於Flex客戶端而言,是可以與企業級應用系統相結合的。

第一項技術將會在這篇文章中進行解釋;第二以及第三項技術將會在隨後的文章中進行解釋;最後兩項技術將會在這一系列文章的結論部分進行說明。 Flex:Engine Yard的全新雲服務

除了這五項技術以外,Flex客戶端可以開放一個直接聯結端口到網絡服務器。直接聯結端口,無論如何,是一項重要的工具,主要用於流媒體類型的應用,對於企業發展的幫助比較小。最終,Flex也支持SOAP。但是SOAP與HTTP技術是非常相似的,在很多現代Web 技術中SOAP應用程序正在逐漸取代RESTful HTTP。

在這一些列文章之後,將會描述Flex與Java框架Spring應用相結合的情況;另一篇文章將會研究Flex 和Scala結合的情況。

每一種Flex集成技術用一個運行實例來說明:管理書店貨存清單的應用,允許用戶增添以及編輯圖書的數據,也包括查找圖書功能。

圖一,用戶界面出現視覺的主要細節,包括圖書標題的數據網格,一系列的查找過濾,以及一個詞條控制板。

Java+Flex的程序界面

Html嵌入(FlashVars)

Flex應用程序運行在Flash Player上。Flash Player是一種有特色的浏覽器插件,但是Adobe的AIR運行時也使得桌面部署Flex應用程序。Flash Player的主要部分是ActionScript虛擬計算機,執行Flash字節碼所在的Flex應用程序的編譯。Adobe開源ActionScript虛擬計算機2006版本,然後作為Mozilla Tamarin項目繼續實現它的部署。Flash Player,它本身並不是開源的,增加了應用管理,多媒體規范,運行時間分配和更新,以及其它ActionScript VM性能。

通過Java+Flex的結合,無疑將對程序的用戶界面做出愉快的改進,同時,又保證了RIA應用在數據和業務處理能方面不再一無是處。

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved