Spring Boot部署在Windows Server上,前后端交互中文乱码解决
我们知道,中文乱码一般是因为字符编码方式与字符解码方式不一致导致的,那么在出现乱码的时候,我们首先应该检查项目的编码是否与cmd控制台的编码方式是否一致。如果不一致的话,那就需要修改某一个编码方式使其一致。Windows系统命令行cmd控制台默认编码为GBK,而SpringBoot项目的默认设置为UTF-8,则直接运行 java -jar d:\project.jar ,name中文就会出现乱码。
·
Spring Boot项目的jar包部署在Windows Server上,使用 以下命令行启动:
java -jar d:\project.jar
发现在前端对数据进行编辑或者新增时,如果数据中含有中文,保存到数据库中的数据就会乱码,这是什么原因导致的呢?
我们知道,中文乱码一般是因为字符编码方式与字符解码方式不一致导致的,那么在出现乱码的时候,我们首先应该检查项目的编码是否与cmd控制台的编码方式是否一致。如果不一致的话,那就需要修改某一个编码方式使其一致。
Windows系统命令行cmd控制台默认编码为GBK,而SpringBoot项目的默认设置为UTF-8,则直接运行 java -jar d:\project.jar ,name中文就会出现乱码。
在网上找到解决方式如下:
java -Dfile.encoding=utf-8 -jar d:\project.jar
在cmd命令行启动时,即将编码方式确定,这样接口保存数据时就不会乱码。
bat文件如下:
@echo off
echo.
echo.
cd %~dp0
set JAVA_OPTS=-Xms256m -Xmx1024m -XX:MetaspaceSize=128m -XX:MaxMetaspaceSize=512m
java -Dfile.encoding=utf-8 -jar %JAVA_OPTS% d:\project.jar
cd bin
pause
如果使用该方式依旧不能解决的话,可以参考以下博客文章:https://blog.csdn.net/seawaving/article/details/122670006
更多推荐
已为社区贡献8条内容
所有评论(0)