0.前言
使用ssm框架搭建项目,使用tomcat访问html文件,出现下面的情况。

这个文件,如果在电脑里面直接打开,是正常的

那么这个问题,大概率出现在tomcat的配置上,需要按照以下几条进行排查。
1.html问题
首先,检查一下你的html是不是utf-8格式,也就是有没有类似下面的代码
<meta charset="utf-8">

如果不是,修改编码格式为utf-8
2.tomcat配置问题
先找到你tomcat的文件目录

2.1 server.xml
进入到tomcat的conf文件夹,找到server.xml,用编辑器打开

找到下面的代码,增加这一行。(直接用ctrl+f 快速搜索”8080“ 这样的关键词就能快速找到)
uriencoding="utf-8"

然后,保存。
2.2 web.xml
打开conf里面的web.xml

找到如下的代码(搜索”debug“就能快速定位)

然后增加下面的代码
<init-param>
<param-name>fileencoding</param-name>
<param-value>utf-8</param-value>
</init-param>
然后保存这个文件。
2.3 catalina.bat
我们回到上一级,进入到bin目录,找到"catalina.bat"
右击,使用编辑器打开它(不要双击运行)

使用搜索功能,搜索下面的内容,快速定位到位置
set "java_opts=%java_opts% %jsse_opts%"

然后在这行的下面,增加下面的内容
-dfile.encoding=utf8 -dsun.jnu.encoding=utf8
变成下面这样:

保存这个文件。
3.清理缓存
上述操作完成后,先把tomcat停掉,然后一定要清理缓存。
以edge浏览器为例子

把这些都勾选。

然后,重新运行tomcat就行。
总结
以上为个人经验,希望能给大家一个参考,也希望大家多多支持代码网。
发表评论