解决各种tomcat中文乱码问题

解决各种tomcat中文乱码问题,第1张

tomcat出现中文乱码问题有以下几种情况:

乱码原因 :这是由于windows下的cmd的默认编码是GBK编码,Tomcat控制台默认输出设置为UTF-8编码

解决方法

解决办法

先检查tomcat下conf/logging.properties配置文件

查看是否ConsoleHandler.encoding=utf-8,如果是则说明tomcat编码没有问题,出问题的是idea编码,如果不等于utf-8,则改为utf-8.一般情况下此时可以正常输出tomcat日志信息。

request.getParameter()打印出来是乱码

原因一 :idea控制台显示编码问题,idea的控制台显示使用的jvm默认编码为win系统的GBK编码,更改jvm编码格式为UTF-8

解决办法:

乱码原因: 服务器发给浏览器的数据默认是按照ISO-8859-1编码,浏览器接收到数据后按照默认的字符集进行解码后显示,如果浏览器的默认解码字符集不是ISO-8859-1,就出现乱码。

在ubuntu麒麟系统中安装tomcat后,用户在搭建Demo程序的过程中有遇到tomcat中文显示乱码的情况,一般乱码都是因为编码问题导致的,而如果大家的编码设置是正确的话就是下面的原因导致的,遇到这种问题的网友可以看看下面为大家准备的解决方法。

ubuntu麒麟系统tomcat中文乱码怎么办?

出现乱码的本质是因为字符集的不统一,如果你的web浏览器发送到服务器的内容字符编码和服务器编码不一致,那么就会出现乱码。

解决方法:

(1)首先统一linux服务器的字符编码,统一配置为utf-8。

(2)配置tomcat配置文件server.xml,将

配置成:

(3)配置mysql数据库my.cnf,将默认字符集设成utf-8。设置完数据库字符集之后再创建数据库,否则前后数据库字符集信息不一致,会导致插入错误。

Tomcat下中文乱码问题的其他解决思路

现在将常见的乱码问题分为JSP页面显示中文乱码、表单提交乱码两类。

1)JSP页面中显示中文乱码??

在JSP文件中使用page命令指定响应结果的MIME类型,如

2)表单提交乱码

表单提交时(post和Get方法),使用request.getParameter方法得到乱码,这是因为tomcat处理提交的参数时默认的是iso-8859-1,表单提交get和post处理乱码问题不同,下面分别说明。

(1)POST处理

对post提交的表单通过编写一个过滤器的方法来解决,过滤器在用户提交的数据被处理之前被调用,可以在这里改变参数的编码方式,过滤器的代码如下:

(2)Get方法的处理

tomcat对post和get的处理方法不一样,所以过滤器不能解决get的乱码问题,它需要在其他地方设置。

打开conf目录下server.xml文件,找到对8080端口进行服务的Connector组件的设置部分,给这个组件添加一个属性:URIEncoding="GBK"。修改后的Connector设置为:

*注意修改后重新启动tomcat才能起作用。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/tougao/11374533.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-15
下一篇 2023-05-15

发表评论

登录后才能评论

评论列表(0条)

保存