spring boot maven项目返回值乱码的解决方法
spring boot maven項目返回值亂碼的解決方法
1、先看亂碼效果:
spring boot maven項目,返回值亂碼,如下圖:
控制臺打印log亂碼,如下圖:
有swagger的話,swagger文檔亂碼,如下圖:
2、分析解決
以上種種,都是maven在打包的時候,沒有用UTF-8編碼導致的,如下圖,是maven打包時的log:
方法一:maven 打包時,會先找對應pom文件中有沒有編碼配置
<project><properties><project.build.sourceEncoding>UTF-8</project.build.sourceEncoding></properties><dependencies>...</dependencies> </project>如果有,就按照pom文件中的配置編碼格式打包。所以這個是最優的解決方案
方法二:如果打包找不到上面的配置,那就會用項目配置
所以,這里配置項目編碼,也能解決亂碼問題
但這種方式,僅僅限于在idea中執行打包命令,才能有效,如果你是自己單獨用命令在cmd窗口執行打包,還是還會亂碼。
方法三:更改maven的平臺編碼格式
本地執行mvn -v(前臺是配置了maven_home的環境變量,沒有配置的話可以直接去對應安裝文件下去執行命令)
發現maven默認的平臺編碼是GBK的,所以我們需要把這個改一下。
新增環境變量:
MAVEN_OPTS
-Dfile.encoding=UTF-8
重新打開一個控制臺(不用重啟電腦),再次查看mvn -v
發現maven的平臺編碼,變成了UTF-8,生效了
這種很明顯,不是項目級別,而且只要用本地這個maven打包,都會用UTF-8編碼格式
3、總結
上面三種方法,都可以解決亂碼,但 強烈建議 用第一種,直接在pom文件中指定。
用第一種,上線的時候,就不用配置線上maven的編碼格式了。
而且也只有第一種,maven打包的時候不是warning警告的:
除了這個,其他方法都是warning警告的,如下圖:
也同樣說明,maven打包,是希望用戶在pom文件中配置的,其他的只是婁底方案而已。
總結
以上是生活随笔為你收集整理的spring boot maven项目返回值乱码的解决方法的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: html5文章页面,文章页面的设计《 H
- 下一篇: CoreText使用介绍