码迷,mamicode.com
首页 > 其他好文 > 详细

日志及参数的乱码问题

时间:2017-09-05 23:00:52      阅读:256      评论:0      收藏:0      [点我收藏+]

标签:参数   connect   i18n   sysconfig   class   添加   arc   sharp   har   

一、查看系统语言

echo $LANG
显示zh_CN.UTF-8说明系统支持中文编码

二、查看系统是否有中文包

locale

三、Tomcat乱码解决

 假设编码用utf-8

 1、tomcat日志乱码

 设置系统编码,先设置系统编码vi /etc/sysconfig/i18n,默认为:

LANG="en_US.UTF-8"
SYSFONT="latarcyrheb-sun16"

修改为:

LANG="zh_CN.UTF-8"
SUPPORTED="zh_CN.UTF-8:zh_CN:zh"
SYSFONT="latarcyrheb-sun16"

运行source /etc/sysconfig/i18n保存设置

2、设置jvm编码

1) 从tomcat的bin目录的sh启动tomcat

在catalina.sh找到JAVA_OPTS配置为JAVA_OPTS="-Dfile.encoding=UTF8 -Dsun.jnu.encoding=UTF8"

注:这个参数必须在jvm启动时加上,在程序中通过设置system property的方式是没有效果的,原因是jvm启动时读取file.encoding并cache,后续只使用启动时读取的编码。 后续:

我之前直接在catalina.sh的最上方添加了JAVA_OPTS="-Dfile.encoding=UTF8 -Dsun.jnu.encoding=UTF8"配置
但是发现配置并不生效 日志仍为乱码
原来catalina.sh中间位置有个这样的配置JAVA_OPTS=
他又把JAVA_OPTS给置空了 怪不得配置不生效

解决方法有两种

在JAVA_OPTS=后面直接添加编码配置
在下一行添加 JAVA_OPTS="$JAVA_OPTS -Dfile.encoding=UTF8 -Dsun.jnu.encoding=UTF8"
推荐后面这一种 不修改原配置 添加新配置才更合理

2) 从服务中启动tomcat

如果tomcat已配置为服务 则要修改修改/etc/rc.d/init.d目录下对应的文件,假如服务为tomcat 就修改tomcat文件 修改方式同上。

3、tomcat参数的乱码问题

 在server.xml的connector中增URIEncoding="utf-8"

4、数据库乱码

url: jdbc:mysql://IP:3306/XX?useUnicode=true&characterEncoding=UTF-8&allowMultiQueries=true

 

日志及参数的乱码问题

标签:参数   connect   i18n   sysconfig   class   添加   arc   sharp   har   

原文地址:http://www.cnblogs.com/moonandstar08/p/7482079.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!