我是靠谱客的博主 痴情钥匙,最近开发中收集的这篇文章主要介绍Springboot 中文乱码问题检查编译环境的编码:配置JDK全局编码:设置maven打包插件的编码在application.properties文件中加入下面内容在配置类中增加如下代码:,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

最近刚好项目上遇到了中文乱码问题,也刚好记录一下

检查编译环境的编码:

File --> Setttings --> Editor --> File Encodings,这下边设置三个地方的编码格式

配置JDK全局编码:

如图在系统环境变量中增加一个变量:JAVA_TOOL_OPTIONS 值为 -Dfile.encoding=UTF-8,如果是项目发布,就在启动的时候加入该JVM 参数

设置maven打包插件的编码

<plugin>
   <!--打包成可执行jar-->
   <groupId>org.springframework.boot</groupId>
   <artifactId>spring-boot-maven-plugin</artifactId>
   <configuration>
      <jvmArguments>-Dfile.encoding=UTF-8</jvmArguments>
   </configuration>
   <executions>
      <execution>
         <goals>
            <goal>repackage</goal>
         </goals>
      </execution>
   </executions>
</plugin>

在application.properties文件中加入下面内容

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

但是貌似有时候不起作用,因为application.properties 在IDEA中好像有BUG,最好是转为yml文件来设置

如果连接有数据库,注意看数据库里面的编码集以及看看数据快照是否已经是乱码了,而不是应用导致的

以上就是正常来说基本就可以搞定了,如果还有乱码可以继续尝试下面的方式

修改controller的@RequestMapping

produces="text/plain;charset=UTF-8"

在配置类中增加如下代码:

@Configuration
public class CustomMVCConfiguration extends WebMvcConfigurerAdapter {

    @Bean
    public HttpMessageConverter<String> responseBodyConverter() {
        StringHttpMessageConverter converter = new StringHttpMessageConverter(
                Charset.forName("UTF-8"));
        return converter;
    }

    @Override
    public void configureMessageConverters(
            List<HttpMessageConverter<?>> converters) {
        super.configureMessageConverters(converters);
        converters.add(responseBodyConverter());
    }

    @Override
    public void configureContentNegotiation(
            ContentNegotiationConfigurer configurer) {
        configurer.favorPathExtension(false);
    }
}

 

 

 

 

 

 

 

最后

以上就是痴情钥匙为你收集整理的Springboot 中文乱码问题检查编译环境的编码:配置JDK全局编码:设置maven打包插件的编码在application.properties文件中加入下面内容在配置类中增加如下代码:的全部内容,希望文章能够帮你解决Springboot 中文乱码问题检查编译环境的编码:配置JDK全局编码:设置maven打包插件的编码在application.properties文件中加入下面内容在配置类中增加如下代码:所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(42)

评论列表共有 0 条评论

立即
投稿
返回
顶部