博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
日志及参数的乱码问题
阅读量:4655 次
发布时间:2019-06-09

本文共 1129 字,大约阅读时间需要 3 分钟。

一、查看系统语言

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

 

转载于:https://www.cnblogs.com/moonandstar08/p/7482079.html

你可能感兴趣的文章
C++内存管理之unique_ptr
查看>>
Access 2010 应用基础 单元三:SQL查询
查看>>
Ubuntu12.04搭建Tomcat7.0
查看>>
Hadoop集群安装配置教程_Hadoop2.6.0_Ubuntu/CentOS
查看>>
使用VMware安装CentOS7详请
查看>>
AES && DES加解密
查看>>
[Android实例] Activity之间数据传递与共享的几种途径(bitmap篇)
查看>>
C#用Microsoft.Office.Interop.Word进行Word转PDF的问题
查看>>
什么是极限开发?
查看>>
Recommender Systems
查看>>
阿里巴巴的零知识证明[转]摘自科学松鼠会,作者奥卡姆剃刀
查看>>
Oracle 行迁移和行链接
查看>>
c++ windows下计时
查看>>
No. three
查看>>
杂诗4
查看>>
打印出A到Z的所有字符,使用char和int转换
查看>>
怎么用js设置a标签点击链接改变当前颜色
查看>>
jQuery源码浅析
查看>>
前端学习笔记day05 第一个页面--header部分
查看>>
Calculate difference between consecutive data points in a column from a file
查看>>