JavaServlet編程及應用之三
| Java關鍵字 |
| 網絡 J2ME 手機游戲 JavaCard Struts 游戲 分析器 JAAS EJB JavaMail 設計模式 J2EE |
GenericServlet 類可以說時JSDK 中最重要的類,也是最基本的類。程序員要編寫Servlet 應用程序,一般要繼承JSDK 提供的GenericServlet 類或它的子類HttpServlet 類。
編程思路:下面是一個簡單的例子,在服務器端執行它,就是向客戶端的瀏覽器中輸出“HELLO WORLD "以及服務器的時間等信息。
HelloWorldServlet.java 的源代碼如下:
| import java.io.*; import java.util.Date; import javax.servlet.*; public class HelloWorldServlet extends GenericServlet { String initString; public void init(ServletConfig config) throws ServletException { //父類的init方法完成對象ServletConfig的存儲工作。 super.init(config); initString=new String("I have veen initialized"); } //在Sercice方法中,實現對客戶請求的響應。它拋出兩個例外ServletException public void service(ServletRequest req,ServletResponse res) throws ServletException,IOException { //類Date得到服務器當前的時間。 Date today = new Date( ); ServletOutputStream out = res.getOutputStream( ); out.println("HELLO WORLD"); out.println(today.toString()); out.println(getServletInfo()); } public void Destroy( ) { } public String getServletInfo( ) { return "HELLO WORLD"; } } |
編程技巧說明:
Service 方法是類GenericServlet 中最重要的方法。每次客戶向服務器發出請求時,服務器就會調用這個方法。編程人員若想對客戶的請求進行響應的話,就必須覆蓋這個方法,并在這個方法中加入自己的代碼來具體實現對客戶的響應。Service 有兩個參數,ServletRequest 和ServletResponse。其中ServletRequest 保存了客戶向服務器發請求的各種屬性。
對象ServletResponse 用來設置如何對客戶進行響應,它有以下三個方法:
* setContentType(String) 用來設置對客戶響應的類型。
* setContentlength(int) 用來設置對客戶響應的長度。
* getOutputStream() 它返回一個寫響應數據的輸出流。
在例子中,我們把這個輸出流傳遞給ServletOutputStream 對象,它是java.io.outputStream 的子類,我們可以通過它把應答數據送還到客戶端的瀏覽器中。
|