天天看點

《Servlet和JSP學習指南》一1.5 ServletResponse

javax.servlet.servletresponse接口表示一個servlet響應。在調用一個servlet的service方法之前,servlet容器會先建立一個servletresponse,并将它作為第二個參數傳給service方法。servletresponse隐藏了将響應發給浏覽器的複雜性。

servletresponse中定義的其中一個方法是getwriter方法,它傳回可以将文本傳給用戶端的java.io.printwriter。在預設情況下,printwriter對象采用iso-8859-1編碼。

在将響應發送給用戶端時,通常将它作為html發送。是以,你對html一定要非常熟悉。

提示 還有一個方法可以用來将輸出傳給浏覽器:getoutputstream。但是,這個方法是用來傳輸二進制資料的,是以,在大多數時候,需要使用getwriter,而不是getoutputstream。關于如何傳輸二進制内容的說明,可檢視第12章中關于檔案下載下傳的内容。

在發送任何html标簽之前,應該先通過調用setcontenttype方法來設定響應的内容類型,比如,将text/html作為參數傳遞,這是在告訴浏覽器内容類型為html。如果沒有設定内容類型,那麼大多數浏覽器将會預設以html的形式顯示響應的内容。但是,如果沒有設定響應的内容類型,有些浏覽器則會将html标簽顯示為普通文本。

代碼清單1-1的myservlet中使用了servletresponse。在本章及後續章節的其他應用程式中,你還會看到它的用法。