zoukankan      html  css  js  c++  java
  • Spring RestTemplate 之中文乱码

    由于RestTemplate的默认构造方法初始化的StringHttpMessageConverter的默认字符集是ISO-8859-1,所以导致RestTemplate请求的响应内容会出现中文乱码。

    解决办法:

    springboot中@Bean配置的时候要把StringHttpMessageConverter编码改成UTF8格式。:

    @Bean    

    public RestTemplate restTemplate() {

            RestTemplate restTemplate = new RestTemplate();

            restTemplate.getMessageConverters().set(1, new StringHttpMessageConverter(StandardCharsets.UTF_8));        

            return restTemplate;

        }

    applicationContext.xml配置中:

    <bean id="requestFactory" class="org.springframework.http.client.SimpleClientHttpRequestFactory">

            <property name="readTimeout" value="10000"/>

            <property name="connectTimeout" value="5000"/>

    </bean>

    <bean id="simpleRestTemplate" class="org.springframework.web.client.RestTemplate">

           <constructor-arg ref="requestFactory"/>

           <property name="messageConverters">

                <list>

                    <bean class="org.springframework.http.converter.FormHttpMessageConverter"/>

                    <bean class="org.springframework.http.converter.xml.MappingJackson2XmlHttpMessageConverter"/>

                    <bean class="org.springframework.http.converter.json.MappingJackson2HttpMessageConverter"/>

                    <bean class="org.springframework.http.converter.StringHttpMessageConverter">

                         <property name="supportedMediaTypes">

                                <list>

                                    <value>text/plain;charset=UTF-8</value>

                                </list>

                         </property>

                    </bean>

                </list>

            </property>

      </bean>

  • 相关阅读:
    RabbitMQ 入门
    Spring boot 2.x 中使用redis
    spring boot 中 Cache 的使用
    vbs 入门
    移动端文本框被原生键盘弹出后挡住文本框
    HTML中添加音乐video embed audio
    input修改placeholder文字颜色
    vue中更换.ico图标报错路径找不到图片
    Chrome表单文本框自动填充黄色背景色样式
    请求头缺少 'Access-Control-Allow-Origin'
  • 原文地址:https://www.cnblogs.com/jnba/p/10522613.html
Copyright © 2011-2022 走看看