跟小博老師一起學(xué)Servlet ——Servlet之HttpServletResponse

通過前面的學(xué)習(xí),我們知道請(qǐng)求到達(dá)容器后容器會(huì)創(chuàng)建HttpServletRequest實(shí)例,并將請(qǐng)求的信息保存到實(shí)例中。在創(chuàng)建請(qǐng)求實(shí)例的同時(shí)容器也會(huì)創(chuàng)建HttpServletResponse實(shí)例,以便我們向客戶端做出響應(yīng)。

HttpServletResponse

HttpServletResponse是一個(gè)接口,它由容器負(fù)責(zé)實(shí)現(xiàn)和創(chuàng)建實(shí)例。它作為Servlet的服務(wù)器方法(doGet、doPost、doDelete)的參數(shù)之一,用來向客戶端返回消息或指示瀏覽器設(shè)定cookie等操作。

用方法

getWriter

取得應(yīng)答流對(duì)象

setContentType

設(shè)定返回的MIME格式

encodeURL

對(duì)URL重編碼使其帶上SESSIONID

addCookie

指示瀏覽器寫入的cookie對(duì)象

演示

以下代碼向?yàn)g覽器返回一段標(biāo)準(zhǔn)HTML

中文亂碼

如果你將上面的代碼照搬到項(xiàng)目,你就會(huì)發(fā)現(xiàn)答應(yīng)消息中的中文又變成了亂碼。原因是以上的代碼還沒告訴瀏覽器返回是什么類型的內(nèi)容,瀏覽器按默認(rèn)編碼的方式進(jìn)行了解析。解決方法也很簡(jiǎn)單,應(yīng)答前指定MIME格式并指定編碼方式即可。

思考

現(xiàn)在的網(wǎng)頁有成百上千行代碼,如采用演示代碼的方式來應(yīng)答,估計(jì)會(huì)讓人崩潰。為提高編程效率,繼Servlet之后產(chǎn)生了JSP技術(shù),它可以很好的解決此類問題。JSP本質(zhì)上就是Servlet,它對(duì)servlet進(jìn)行了包裝降低編程難度,但夯實(shí)Servlet知識(shí)對(duì)學(xué)習(xí)JSP百利而無一害。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

推薦閱讀更多精彩內(nèi)容