最近,一直运行在tomcat6上的一个项目,因为集成别人控件(控件要在tomcat8上运行)的缘故,发现系统中js文件出现中文乱码的情况。

解决办法: 1、找到apache-tomcat-8.5.68\conf\server.xml文件


<Connector port="8088" protocol="HTTP/1.1"
               connectionTimeout="20000"
               redirectPort="8443" URLEncoding="UTF-8" />

添加

URLEncoding=“UTF-8”

2、找到apache-tomcat-8.5.68\bin\catalina.bat文件

set "JAVA_OPTS=%JAVA_OPTS% %JSSE_OPTS%  -Dfile.encoding=UTF8 "

添加

-Dfile.encoding=UTF8

3、找到apache-tomcat-8.5.68\conf\web.xml文件

<servlet>
        <servlet-name>default</servlet-name>
        <servlet-class>org.apache.catalina.servlets.DefaultServlet</servlet-class>
        <init-param>
            <param-name>debug</param-name>
            <param-value>0</param-value>
        </init-param>
		 <init-param>
            <param-name>fileEncoding</param-name>
            <param-value>UTF-8</param-value>
        </init-param>
        <init-param>
            <param-name>listings</param-name>
            <param-value>false</param-value>
        </init-param>
        <load-on-startup>1</load-on-startup>
    </servlet>

添加

<init-param>
      <param-name>fileEncoding</param-name>
      <param-value>UTF-8</param-value>
</init-param> 

重启tomcat之后再清除缓存,js乱码解决。