java项目 部署后交互 乱码

今天部署个项目,显示、查询啥啥一切正常,更新数据,保存再对出来,凡是中文的都变成了乱码。
各种查,系统该配置的都配了,始终没明白为什么乱码,配置信息如下:

server.tomcat.uri-encoding=UTF-8
server.servlet.encoding.force=true
server.servlet.encoding.charset=UTF-8
spring.http.encoding.charset=UTF-8 
spring.http.encoding.enabled=true 
spring.http.encoding.force=true

前端使用的也是UTF-8:

axios.defaults.headers['Content-Type'] = 'application/json;charset=utf-8'
// 创建axios实例
const service = axios.create({
    
    
  // axios中请求配置有baseURL选项,表示请求URL公共部分
  baseURL: process.env.VUE_APP_BASE_API,
  // 超时
  timeout: 60000
})

突然想到服务器编码,查了下,果然,我使用的登录用户使用了GBK,但也不对,我其他项目使用了 也是和现在的情况一样,只是部署方式不一样,另一个项目前后端分离的,前端放在了Tomcat中,现在这个为了偷懒,将Vue编译的结果放在了Jar中,然后直接启动了Jar包。
于是试了下,设置编码启动项目:

java -Dfile.encoding=utf-8 -jar tager-1.0-SNAPSHOT.jar

然后,问题解决了。不过心中始终留有疑惑,特此记录。

猜你喜欢

转载自blog.csdn.net/pengain/article/details/114929384