程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> 網頁編程 >> JSP編程 >> 關於JSP >> 簡化Ajax和Java開發,第1部分:用JSP標記文件動態生成JavaScript代碼

簡化Ajax和Java開發,第1部分:用JSP標記文件動態生成JavaScript代碼

編輯:關於JSP

很多Web開發人員都經常抱怨說 Java™ EE 太復雜、構建新的 Web 組件太難、定制現有的組件沒有預想的那樣簡單,並且即便是很小的更改都需要重新啟動應用程序。本系列給出了針對這些問題的解決方案,即采用代碼生成器、約定、腳本語言和先進的 JavaServer Pages ™ (JSP) 特性。在本文中,您將了解如何基於 JSP 標記文件構建可重用的 Ajax 和 Java 組件,而這些 JSP 標記文件很容易開發和部署。更改之後,JSP 標記文件會由 Java EE 服務器自動重編譯,而無須重啟應用程序。此外,您還能完全控制所生成的代碼,並能輕松地定制這些輕量級組件,因為它們使用的是 JSP 語法。

本系列含 4 部分,展示了一種基於 JSP 的技術,用以生成 JavaScript 代碼、顯著減少需要手動編寫的代碼量,本文是第 1 部分。本文的示例應用程序展示了如何生成 JavaScript 函數來發送 Ajax 請求和處理 Ajax 響應。如果想要輕松地更改 Ajax 代碼,可以將這裡討論的簡單技巧應用到實際的應用程序中。本文更寬泛的目標是展示如何使用 JSP 標記文件針對具體需求生成 JavaScript 代碼,而非只是 Ajax 例程。

使用框架和代碼生成器

如果您很幸運地找到了一種能滿足您需要的組件或框架,那麼就請使用它吧。如果沒有找到也沒關系,因為您總是可以開發自己的解決方案,也可以定制現有的一段代碼。不管是哪種情況,一種很好的做法是 “參數化” 代碼並將其放入一個可重用的庫,而非將參數硬編碼到您的代碼裡。不過有時候,實現泛型並不實際,因為它會使開發變得復雜,而非簡化。在將泛型代碼放入可重用組件或框架時,可以考慮使用代碼生成器來更有效地生成特定的代碼。

在開發的過程中避免復制 & 粘貼

假設,您需要應用程序使用 Ajax 請求站點上的某些信息,最快的(當然不是最好的)方法是找到一些如清單 1 這樣的免費代碼、更改 URL 並將這些代碼粘貼到 Web 頁面。很多開發人員都會這麼做,但這種做法會導致巨大的維護問題。如果應用程序具有數百個頁面,最後的結果將是出現大量像清單 1 中的 getInfo() 這樣的函數。不好的一面是每次需要進行添加或更改(比如實現 Ajax 請求的錯誤處理)時,您都必須要手動修改所有頁面並重新測試它們。好的一面是您可以通過使用庫、框架和代碼生成器,很容易地避免這個維護問題。

清單 1. Ajax 函數

function getInfo(country, city) {
   var request = null;
   if (window.ActiveXObject)
     request = new ActiveXObject("Microsoft.XMLHTTP");
   else if (window.XMLHttpRequest)
     request = new XMLHttpRequest();
   else
     return;
   var url = "CityInfo.jsp?country=" + escape(country)
              + "&city=" + escape(city);
   request.open("GET", url, true);
   function processResponse() {
     if (request.readyState == 4) {
       if (request.status == 200) {
         // ...
       }
     }
   }
   request.onreadystatechange = processResponse;
   request.send(null);
}

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