電子書分享應用構建出發,講述了如何在 Google App Engine 平台上構建這個"/> 電子書分享應用構建出發,講述了如何在 Google App Engine 平台上構建這個"/>
歡迎您光臨本站 註冊首頁

Google App Engine Java構建電子書網站

←手機掃碼閱讀     火星人 @ 2014-03-09 , reply:0
「雲計算」是目前熱門的技術方向,本文從 Google 的雲計算平台 App Engine 入手,簡單介紹了 Google 面向 Java 開發人員的雲計算平台.從一個實際的電子書 href="http://product.it168.com/list/b/0322_1.shtml" target=_blank>電子書分享應用構建出發,講述了如何在 Google App Engine 平台上構建這個應用程序.

  「雲計算」基本概念的介紹

  IBM 在 Amazon EC2 雲計算環境中提供了 DB2、Informix、Lotus、WebSphere 等方面的 AMI 鏡像資源.您只需按使用量支付少量費用,就可以使用到雲上的數據、門戶、Web 內容管理、情景應用等服務.歡迎您隨時訪問 雲計算空間,獲取更多信息.

  根據維基百科上的定義,雲計算是一種動態易擴展,而且通常是通過互聯網提供的虛擬化的資源計算方式, 用戶不需要了解雲內部的細節,也不必具有雲內部的專業知識,或者直接控制基礎設施.雲計算包括基礎設施即服務(IaaS)、平台即服務(PaaS)和軟體即服務(SaaS)以及其它依賴於互聯網滿足客戶計算需求的技術趨勢.雲計算服務通常提供通用的通過瀏覽器訪問的在線商業應用,軟體和數據存儲 href="http://storage.it168.com/" target=_blank>存儲在伺服器 href="http://server.it168.com/" target=_blank>伺服器上.本文的介紹主要在「平台即服務」這個層次上.在這個層次上,Google 所提供的技術即 Google App Engine .

  Google 的「雲計算」平台

  Google 作為一個搜索引擎,在其發展過程中不斷地追求更高的可伸縮型和性能,逐漸發展出一套以自由技術為基礎的良好的解決方案,其中包括 Google File System、BigTable 以及 Map Reduce 等.基於這些技術,Google 發展出了稱之為 App Engine 的平台,可以允許開發人員在它之上開發應用,同時也利用上了 Google 所提供的基礎設施,在可擴展性等非功能性的需求上獲得好處,從而可以更加集中精力地解決業務的需求.

  Google App Engine 最早於 2008 年 4 月發布,最初支持的開發語言是 Python .今年 4 月,Google App Engine 已經宣布了對 Java 語言的支持.下圖是 Google App Engine for Java 支持的概覽.

  圖 1. Google App Engine for Java 支持的概覽

  在 Web 應用開發上,Google App Engine 支持 JSP 和 Servlet 技術;在數據存儲上,Google App Engine 支持 JDO 和 JPA 兩套機制,開發人員在面向對象的層次考慮數據的持久化,不需要考慮關係資料庫.此外,Google App Engine 還提供一系列常用的服務,例如郵件收發、圖像處理和緩存等.

  本文將通過一個簡單的實例來展示如何在 Google App Engine for Java 平台上構建 Web 應用.

  準備開發環境

  Google App Engine 支持兩種開發方式:基於集成開發工具 Eclipse 和不基於 Eclipse .由於 Eclipse 是廣大 Java 開發人員使用最多的工具,本文將介紹基於 Eclipse 安裝 Google App Engine SDK 並開發部署應用到 Google App Engine 上.下面是簡要的過程:

  安裝 JDK 1.5 或者 1.6

  App Engine 現在支持 Java 1.5 版本以上的 JDK,可以從 這裡 下載.

  安裝 Eclipse 3.3 或者 3.4

  下載 3.3 以上版本的 Eclipse 中的一款即可.

  安裝 Google App Engine 的 SDK

  運行 Eclipse 之後,在 Help > Software Updates 中獲取 Google App Engine 的插件.

  圖 2. 安裝 Google App Engine Eclipse 插件

  Eclipse 3.3(Europa), 從這裡 下載 安裝.

  Eclipse 3.4(Ganymede),從這裡 下載 安裝.

  安裝成功之後,就可以構建一個 Google App Engine 的應用了.選擇 File>New>Web Application Project.

  圖 3. 新建 Web 項目

  輸入項目名稱 Hello World .

  圖 4. 輸入項目名稱

  運行該應用.

  圖 5. 運行

  應用運行起來之後,訪問 http://localhost:8080 .

  圖 6. 運行結果

  將應用部署到 Google App Engine 上

  恭喜您,到這裡,你已經構建出了第一個 Google App Engine 上的應用,您可以將它部署到 Google 的 App Engine 平台上了.您需要做的就是申請一個帳號.

  到這裡,讀者對 Google App Engine for Java 已經有了直接的印象.下面將通過一個更複雜的例子,講述利用 Google App Engine 中的編程時的核心概念.

  用例介紹

  一個電子書分享網站,最基礎的需要滿足的功能是允許用戶上傳文件和搜索文件.對於用戶的瀏覽需求,列出最近上傳的文件也是一個基本的需求.用例圖如下圖所示.

  圖 7. 用例圖

  存儲對象模型

  存儲模型是一個應用開發的核心之一,在 Google 的 App Engine 的平台,開發人員看不到資料庫的概念,不需要創建資料庫. Google 的 App Engine 提供了基於 JPA 和 JDO 的兩種技術給開發人員.這裡我們利用 JDO 技術來做數據的存取.下面是電子書分享網站的 JDO 的對象模型.

  圖 8. JDO 對象模型

  下面針對用戶上傳一個文檔這個用例,講述如何實現這個功能.

  構建上傳文件頁面

  在工程的 war 目錄下,添加一個新的文件 upload.html,在該文件中包含如下的代碼.

  構建文件上傳處理的 servlet

利用 apache 的 commons 的文件上傳的庫,該 servlet 將上傳的內容解析成 File 對象.

  圖 9. Servlet 模型

  持久化改文件

  應為 File 類已經添加了 JDO 需要的註釋,如下.

  利用 JDO 的規範提供的 API,可以持久化該對象到 Google 的 App Engine 的存儲設施上.

注意,這裡需要在在項目的 classpath 的 META-INF 目錄下有 jdoconfig.xml,其內容如下.


[火星人 ] Google App Engine Java構建電子書網站已經有464次圍觀

http://coctec.com/docs/java/show-post-60818.html