在Cookie中保存中文时出现如下500系统内部错误:
出错原因:在保存Cookie字符串出现中文时没有进行字符转码的编码,抛出异常。
解决cookie无法保存中文问题:
使用JAVA中java.net包中URL字符串编码与解码的工具类
步骤:1.在.jsp页面的page中导入 Java.net.*的包
<%@ page language="java" import="java.util.*,java.net.*" contentType="text/html;charset=utf-8"%>
2.在使用Cookie之前加入 request.setCharacterEncoding("utf-8");
3.使用java.net包中工具类 URLEncoder.encode(String s,String enc)编码
String username=URLEncoder.encode(request.getParameter("username"),"utf-8");
4.使用java.net包中工具类 URLEncoder.encode(String s,String enc)解码
username=URLDecoder.decode(c.getValue(),"utf-8");