JSP中显示中文乱码以及表单提交中文乱码问题的解决。

一,访问tomcat时出现乱码问题。

解决方法:

1,<%@ page contentType=”text/html; charset=utf”%>指明使用编码为utf-8

2,<meta charset=”utf-8”/> 在html头标签中写入

但是但是,这样也有可能访问到乱码,所以,在server.xml中加入URLEncoding=”utf-8”如下

<Connector URLEncoding="utf-8"

               port="8080" protocol="HTTP/1.1"

               connectionTimeout="20000"

               redirectPort="8443" />

重新启动Tomcat服务器。则就解决了乱码问题

二,表单提交用request.getParameter()获取相应的值时出现中文乱码。

除了解决头Tomcat本身在页面显示的乱码问题外,还有就是Form表单提交到后台,使用request.getParameter()获取相关内容时,中文会出现乱码问题,经过查找资料,原因总结为下:

用post提交时,表单内容是以iso-8859-1进行编码的,所以在使用getParameter获取的字符串是乱码。使用byte bb[] = str.getBytes("ISO-8859-1");将字符串进行重新编码为iso-8859-1的byte数组,然后使用UTF-8编码解码byte数组,构造一个新的String,语句如下,str = new String(bb, "UTF-8");就可以成功解决form提交后,出现的乱码问题

posted @ 2018-11-10 08:26  没尾巴的刺刺鱼  阅读(94)  评论(0编辑  收藏  举报