IDEA下tomcat 中文字符UTF-8编码 奇数最后位乱码
遇到的问题的场景: 调用别人的接口,要求某个字段中文用utf-8编码,本地测试没有问题,传过去接收到的为正常字符,tomcat下偶数位也是对的,单独奇数位的时候最后一位为乱码。
问题分析
GBK转UTF-8奇数位最后一位乱码
因为是用postman发送的请求,刚开始以为是postman的配置问题,发现都是utf-8编码,于是不断找问题,终于发现应该是tomcat的配置环境问题–也就是jvm运行环境的问题
解决方法
打开tomcat安装目录下的
找到catalina.bat 编辑 文字查找JAVA_OPTS=%JAVA_OPTS%
在其后面空格加-Dfile.encoding=UTF-8
如图
重新启动tomcat就ok啦
TIPS
如果还是不行
加上以下步骤一般即可处理该问题
一、修改windows系统的默认编码
系统环境变量->新建变量
变量名为:JAVA_TOOL_OPTIONS
变量值为:-Dfile.encoding=UTF-8
二、修改cmd的默认编码
cmd中输入:CHCP 65001
再次重新启动tomcat就ok啦