jsp向servlet传汉字出现乱码,问我在servlet设置了request.setCharacterEncoding("utf-8");

2024-12-31 18:31:00
推荐回答(2个)
回答1:

如果汉字是在url中的,用encodeURIComponent(这里是汉字);

如果是输出的话,前面要 response.setContentType("text/html;charset=utf-8");这样设置一下;如下图:



ps:

response.setContentType("text/html;charset=utf-8");这个方法内部其实是调用了

response.setHeader("Content-type","text/html;charset=utf-8");这个方法和 response.setCharacterEncoding("utf-8");


=====

response.setHeader("Content-type","text/html;charset=utf-8");这句话的作用是告诉浏览器以什么码表打开。

程序以什么码表输出了,程序就要控制以什么码表打开。同过这句话就可以控制以什么码表打开。

在JSP页面上有个这样的标签,这个标签可以模拟一个http响应头,在这个标签中也可以设置码表,告诉浏览器以什么码表打开。

回答2:

在你的tomcat配置文件中设置URIEncoding="UTF-8"