写了个登录返回结果的 demo ,结果一直出现乱码问题。 Google 百度搜一圈也没看到靠谱答案,以为是项目文件编码有问题,删了重建一个只有一个 jsp 和一个 servlet 的项目。整个项目包括 JSP 都是设置了 UTF-8 。
发现还是有问题。
在 jsp 里写了如下内容:
<body>
<%out.println("测试");%>
<form action="test">
<input name="name" type="text" />
<input type="submit" />
</form>
</body>
打开 test.jsp 的时候显示正常。
点击按钮请求 servlet ,在 servlet 的 service()方法中调用 RequestDisptacher 的 forward 方法回到 test.jsp 后,就显示不正常,“测试”两个字显示“??”。
看了响应头的 ContentType 编码是 iso8859-1
JSP 的 ContentType 我都设置了 UTF-8 ,为什么响应的 ContentType 还是 iso8859-1 呢?
在 service()方法里用 response.setContentType()方法也没用。
有没有不修改 tomcat 配置解决这个问题的方法?
折腾来折腾去,编码问题都把我脑袋变成浆糊了。
发现还是有问题。
在 jsp 里写了如下内容:
<body>
<%out.println("测试");%>
<form action="test">
<input name="name" type="text" />
<input type="submit" />
</form>
</body>
打开 test.jsp 的时候显示正常。
点击按钮请求 servlet ,在 servlet 的 service()方法中调用 RequestDisptacher 的 forward 方法回到 test.jsp 后,就显示不正常,“测试”两个字显示“??”。
看了响应头的 ContentType 编码是 iso8859-1
JSP 的 ContentType 我都设置了 UTF-8 ,为什么响应的 ContentType 还是 iso8859-1 呢?
在 service()方法里用 response.setContentType()方法也没用。
有没有不修改 tomcat 配置解决这个问题的方法?
折腾来折腾去,编码问题都把我脑袋变成浆糊了。