1.0          其他語言
 
 

2.1 為什麼不使用 JSP

 
 

我們大多數人都知道, JSP 已經在很多專案中使用了。並且,很多程式員在 JSP 中寫所有的 Java 代碼。這會讓 JSP 頁面難以被網頁排版工具,比如 Dreamweaver,來編輯。

也有很多人在努力地制造更多的 JSP taglib,他們只是相信,JSP taglib 會把 Java 代碼從 JSP 中移到 JSP taglib 源檔案中,這樣會使 JSP 頁面更干淨。但是,這不是一個好想法。大多數 JSP taglib 需要輸出 HTML 標簽,這意味著,我們要在 taglib 中寫 HTML,這些 HTML 沒有辦法進行排版。這也是很多 J2EE 專案網頁看上去比 ASP/PHP 要難看的原因。網頁編輯器沒有辦法編輯 taglib 代碼中的 HTML 標簽。

比如,Struts 的一個標簽代碼是這樣的︰

 
    public class CheckboxTag extends BaseHandlerTag {
      public int doStartTag() throws JspException {
     ...
     StringBuffer results = new StringBuffer("<input type=\"checkbox\""); //===>網頁編輯器沒有辦法格式化這個
     ...
     TagUtils.getInstance().write(pageContext, results.toString());
     ...
}
 
   

 

JSP 不能在沒有 J2EE 伺服器的情況下執行。我們不能對 JSP 頁面進行單元測試,這不是什麼好事。