解决方案一:(不建议使用该方案,因为我发现这个方案确实可以解决html乱码问题,但是在这之后从html提交表单到servlet的话,servlet拿到的数据就会乱码,而且是不管你怎么设置都是乱码,很令人头疼)
在运行/调试 配置对话框的Startup/Connection面板中,
勾选Pass environment variables,
并添加一个environment variable
Name填JAVA_TOOL_OPTIONS
Value填-Dfile.encoding=UTF-8
![](https://blog.51yangyu.cn/wp-content/uploads/2023/05/image.png)
![](https://blog.51yangyu.cn/wp-content/uploads/2023/05/image-1-1024x698.png)
![](https://blog.51yangyu.cn/wp-content/uploads/2023/05/image-2-1024x698.png)
点击OK,重启Tomcat。乱码问题就完美解决了。
解决方案二:
找到Tomcat安装路径的conf目录
![](https://blog.51yangyu.cn/wp-content/uploads/2023/05/image-3-1024x576.png)
对web.xml文件修改,添加
<init-param>
<param-name>fileEncoding</param-name>
<param-value>UTF-8</param-value>
</init-param>
![](https://blog.51yangyu.cn/wp-content/uploads/2023/05/image-4.png)
对server.xml文件进行修改,添加
URIEncoding="UTF-8"
![](https://blog.51yangyu.cn/wp-content/uploads/2023/05/image-5.png)
修改后记得保存,最后重启Tomcat就好了,如还是乱码就清理一下浏览器缓存。
thanks for good website