1. 程式人生 > >javaEE HttpServletResponse, 設定響應頭, 重定向, 定時重新整理, 設定編碼集, sendRedirect(), setContentType()

javaEE HttpServletResponse, 設定響應頭, 重定向, 定時重新整理, 設定編碼集, sendRedirect(), setContentType()

xxxServlet.java:

package com.xxx.header;

import java.io.IOException;
import java.io.PrintWriter;

import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

public class Servlet1 extends HttpServlet {

	protected void doGet(HttpServletRequest request, HttpServletResponse response)throws ServletException, IOException {
		
		// 新增響應頭。  如果之前有相同響應頭,會以","分隔。  (不常用)
		response.addHeader("name", "zhangsan");
		//response.addIntHeader("age", 28);
		//response.addDateHeader("birthday", new Date().getTime());
		
		// 設定響應頭。  如果之前有相同響應頭,會覆蓋之前的。  (常用)
		response.setHeader("age", "28");
		response.setHeader("age", "50");  // 覆蓋之前的響應頭
		
		//-----------------------------------------------------------
		// 重定向
		//1、設定狀態碼302
		//response.setStatus(302);
		//2、設定響應頭Location
		//response.setHeader("Location", "/MyWeb/servlet2");
		
		//封裝成一個重定向的方法sendRedirect(url)
		response.sendRedirect("/WEB14/servlet2"); // 重定向
		
		//設定定時重新整理的頭
		//response.setHeader("refresh", "5;url=http://www.baidu.com"); //5秒後,重定向到百度
		
		
		//------------------------------------------------------------
		//設定編碼
		//設定response查詢的碼錶 (response字元輸出流的編碼)
		//response.setCharacterEncoding("UTF-8");
		
		//通過響應頭 Content-Type 告知客戶端使用何種碼錶進行解碼。  同時Tomcat會自動setCharacterEncoding("UTF-8")
		//response.setHeader("Content-Type", "text/html;charset=UTF-8");
		
		response.setContentType("text/html;charset=UTF-8");  // 簡寫形式(常用)
		
		PrintWriter writer = response.getWriter();
		//writer.write("hello response!!!");
		writer.write("你好");
		
	}

	protected void doPost(HttpServletRequest request, HttpServletResponse response)throws ServletException, IOException {
		doGet(request, response);
	}
}