程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> 網頁編程 >> JSP編程 >> 關於JSP >> Java Servlet 和 JSP入門教程(4)

Java Servlet 和 JSP入門教程(4)

編輯:關於JSP

Java Servlet 和 JSP教程(4)
3.3 輸出HTML的Servlet
大多數Servlet都輸出HTML,而不象上例一樣輸出純文本。要輸出HTML還有兩個額外的步驟要做:告訴浏覽器接下來發送的是HTML;修改println語句構造出合法的HTML頁面。
第一步通過設置Content-Type(內容類型)應答頭完成。一般地,應答頭可以通過HttpServletResponse的setHeader方法設置,但由於設置內容類型是一個很頻繁的操作,因此Servlet API提供了一個專用的方法setContentType。注意設置應答頭應該在通過PrintWriter發送內容之前進行。下面是一個實例:
HelloWWW .java
package hall;
import java.io.*;
import javax.servlet.*;
import javax.servlet.http.*;
public class HelloWWW extends HttpServlet {
public void doGet(HttpServletRequest request,
HttpServletResponse response)
throws ServletException, IOException {
response.setContentType("text/html");
PrintWriter out = response.getWriter();
out.println("<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 " +
"Transitional//EN"> " +
"<HTML> " +
&nb sp; "<HEAD><TITLE>Hello WWW</TITLE></HEAD> " +
"<BODY> " +
"<H1>Hello WWW</H1> " +
"</BODY></HTML>");
}
}
3.4 幾個HTML工具函數
通過println語句輸出HTML並不方便,根本的解決方法是使用JavaServer Pages(JSP)。然而,對於標准的Servlet來說,由於Web頁面中有兩個部分(DOCTYPE和HEAD)一般不會改變,因此可以用工具函數來封裝生成這些內容的代碼。
雖然大多數主流浏覽器都會忽略DOCTYPE行,但嚴格地說HTML規范是要求有DOCTYPE行的,它有助於HTML語法檢查器根據所聲明的 HTML版本檢查HTML文檔合法性。在許多Web頁面中,HEAD部分只包含<TITLE>。雖然許多有經驗的編寫者都會在HEAD中包含許多META標記和樣式聲明,但這裡只考慮最簡單的情況。
下面的Java方法只接受頁面標題為參數,然後輸出頁面的DOCTYPE、HEAD、TITLE部分。清單如下:
ServletUtilities.java
package hall;
public class ServletUtilities {
public static final String DOCTYPE =
"<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">";

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