1. 程式人生 > >Content-Type響應頭,設定碼錶

Content-Type響應頭,設定碼錶

	1.Content-Type響應頭的作用
		1.設定了response使用的碼錶
		2.通知了瀏覽器使用指定的碼錶去解碼。
	2.常用的方法:
		setHeader(頭名稱,值);
		setContentType(值); 
	3.亂碼的根本原因
		reponse預設使用iso8859-1進行編碼,瀏覽器預設使用utf-8或者gbk解碼,因此有亂碼。		
		解決方案:讓reponse和瀏覽器使用統一的碼錶進行編碼
	4.程式碼
		public class ContentTypeServlet extends HttpServlet {
		 
			public void doGet(HttpServletRequest request, HttpServletResponse response)
					throws ServletException, IOException {
	//對瀏覽器輸出一段中文   ,  getByte() 預設使用 系統預設的碼錶(gbk)碼錶進行編碼, 我們的谷歌瀏覽器預設也是使用了系統預設碼錶進行解碼。
			/*	OutputStream out = response.getOutputStream();
				out.write("中國".getBytes());
			*/
				
				//設定response使用的碼錶
				//response.setCharacterEncoding("UTF-8");
				//通過設定Content-Type響應頭實現response與瀏覽器使用統一碼錶。    
				/*
				 * Content-Type作用:
				 * 			1. 設定了repsonse使用的碼錶。
				 * 			2. 通知了瀏覽使用何種碼錶去解碼。
				 */
				//原始的方式:response.setHeader("Content-Type", "text/html;charset=gbk");
				/* 改良的方式*/
			       response.setContentType("text/html;charset=gbk");
				PrintWriter out = response.getWriter();
				out.write("中國");
			}
		 
			public void doPost(HttpServletRequest request, HttpServletResponse response)
					throws ServletException, IOException {
				doGet(request, response);
			}
		}