jsp把Cookie设置为UTF-8 编码防止中文乱码



把Cookie设置为UTF-8 编码防止中文乱码实例,request请求中的Cookie信息使用UTF-8编码的方法:

<%@ page language=”java” pageEncoding=”UTF-8″ %>
<jsp:directive.page import=”java.net.URLEncoder”/>
<jsp:directive.page import=”java.net.URLDecoder”/>
<!DOCTYPE HTML PUBLIC “-//W3C//DTD HTML 4.01 Transitional//EN”>
<html>
<head>
<title>Cookie Encoding</title>
</head>
<%
// 新建一个Cookie对象. 该对象中的内容使用中文,name 与 value 都使用 UTF-8 编码.
Cookie cookie = new Cookie(
URLEncoder.encode(“用户名”, “UTF-8″),
URLEncoder.encode(“炎黄子孙”, “UTF-8″));
// 用response把Cookie信息发送到客户端
response.addCookie(cookie);
%>
<body>
<%
//判断request请求中的Cookie新不为空
if(request.getCookies() != null){
// 遍历所有的Cookie
for(Cookie cc : request.getCookies()){
//request请求中的Cookie信息使用UTF-8编码
String cookieName = URLDecoder.decode(cc.getName(), “UTF-8″);
String cookieValue = URLDecoder.decode(cc.getValue(), “UTF-8″);
//在页面上显示Cookie信息
out.println(cookieName + “=” + cookieValue + “; <br/>”);
}
}
else{
out.println(“Cookie 已经写入客户端. 点击超链接查看Cookie内容. “);
}
%>
<a href=”jsp_Unicode.jsp”>查看Cookie内容</a>
</body>
</html>