SERVLET RESPONSE常見用法

response是HttpServletResponse的實例,用於提供給瀏覽器的響應信息。

設置響應內容:

通過response設置響應已經用得比較多了
PrintWriter pw= response.getWriter();
通過response.getWriter(); 獲取一個PrintWriter 對象
可以使用println(),append(),write(),format()等等方法設置返回給瀏覽器的html內容。

設置響應格式:

response.setContentType("text/html");


"text/html" 是即格式 ,在request獲取頭信息 中對應的request.getHeader("accept"). 
"text/html" 是存在的,表示瀏覽器可以識別這種格式,如果換一個其他的格式, 比如 "text/lol" ,瀏覽器不能識別,那麼打開此servlet就會彈出一個下載的對話框。

這樣的手段也就常常用於實現下載功能

設置響應編碼:

設置響應編碼有兩種方式

1. response.setContentType("text/html; charset=UTF-8");

2. response.setCharacterEncoding("UTF-8");



這兩種方式都需要在response.getWriter調用之前執行才能生效。

他們的區別在於

1. response.setContentType("text/html; charset=UTF-8");


不僅發送到瀏覽器的內容會使用UTF-8編碼,而且還通知瀏覽器使用UTF-8編碼方式進行顯示。所以總能正常顯示中文

2. response.setCharacterEncoding("UTF-8");


僅僅是發送的瀏覽器的內容是UTF-8編碼的,至於瀏覽器是用哪種編碼方式顯示不管。 所以當瀏覽器的顯示編碼方式不是UTF-8的時候,就會看到亂碼,需要手動再進行一次設置。

設置不使用緩存:

使用緩存可以加快頁面的加載,降低服務端的負擔。但是也可能看到過時的信息,可以通過如下手段通知瀏覽器不要使用緩存
 

response.setDateHeader("Expires",0 );

response.setHeader("Cache-Control","no-cache");

response.setHeader("pragma","no-cache");

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章