• tomcat 控制台乱码问题


                环境:win7 + tomcat 8.5

                问题描述:web端一切正常,不管是返回页面的数据还是控制台打印的日志,都没乱码,给app提供的api接口返回乱码,然后就去百度,像什么 在tomcat的service.xml中修改编码的,那种可以直接忽略了

    从来没有灵验了,然后就是修改catalina.bat 这个文件,加入utf8的编码(可自行百度),然后返回给api接口的数据不乱码了,但是tomcat控制台开始乱码,于是乎,又百度,然后分为两种解决办法:第一种是

    如果用的eclipse或者ide这种开发工具,可通过设置 一直有 VM Options 这个属性,加入 -Dfile.encoding=UTF-8 进行解决,可百度的到,然后我的并么有解决,而且这种只是通过开发工具启动tomcat有用,第二种通过修改系统的utf编码;

    2019年3月21日12:01:07 更新

               乱码究其原因是编码问题,下面将win10下  解压版的tomcat8.5 的乱码问题解决方法列出来。

              1  bin目录下的catalina.bat 文件,set "JAVA_OPTS=%JAVA_OPTS% %JSSE_OPTS%" 改为 

               set "JAVA_OPTS=%JAVA_OPTS% %JSSE_OPTS% -Dfile.encoding=UTF-8"

               2 conf目录下的logging.properties的文件中,修改或加入

                  java.util.logging.ConsoleHandler.encoding = UTF-8

               3 修改windows运行窗口的编码为utf-8

                 https://juejin.im/post/5bb23cc15188255c5121d499

    至此,所有编码都已经改为了utf-8,乱码问题解决。

    说一点:以上方法不适用所有的,具体要根据系统编码进行改变。

    tomcat conf/server.xml文件中的编码,要使用urf-8,因为这个是用来和前台页面传至交互的接口。

    catalina.bat是tomcat窗口,输出程序日志的编码

    loggin文件中的编码,是tomcat本身的日志信息编码,比如tomcat的启动信息。

  • 相关阅读:
    我的大菠萝 – 2,控件及数据绑定
    我的大菠萝 – 1,大框架的搭建
    企业培训·在线教育产品出来后为什么团队元老选择离职
    ET中热更(ILRuntime)使用过程中,需要做的适配器,比如Linq排序
    ET–异步协程使用–TimerComponent篇
    Windows Phone开发之”给我好评“
    博客园,我开始自己的随笔啦
    转换服务的端口号
    多进程模块multiprocessing的使用
    python中协程的使用示例
  • 原文地址:https://www.cnblogs.com/sanduweiliangxtx/p/10178731.html
Copyright © 2020-2023  润新知