Blame view

java110-service/src/main/java/com/java110/service/configuration/CustomMVCConfiguration.java 1.57 KB
88e030b7   王彪总   init project
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
  package com.java110.service.configuration;
  
  import org.springframework.context.annotation.Bean;
  import org.springframework.context.annotation.Configuration;
  import org.springframework.http.converter.HttpMessageConverter;
  import org.springframework.http.converter.StringHttpMessageConverter;
  import org.springframework.web.servlet.config.annotation.ContentNegotiationConfigurer;
  import org.springframework.web.servlet.config.annotation.WebMvcConfigurerAdapter;
  
  import java.nio.charset.Charset;
  import java.util.List;
  
  /**
   * 前台提交乱码解决
   * Created by wuxw on 2018/5/14.
   */
  @Configuration
  public class CustomMVCConfiguration extends WebMvcConfigurerAdapter {
  
      @Bean
      public HttpMessageConverter<String> responseBodyConverter() {
          StringHttpMessageConverter converter = new StringHttpMessageConverter(
                  Charset.forName("UTF-8"));
          converter.setWriteAcceptCharset(false);
          return converter;
      }
  
      @Override
      public void configureMessageConverters(
              List<HttpMessageConverter<?>> converters) {
          super.configureMessageConverters(converters);
          converters.add(responseBodyConverter());
      }
  
      @Override
      public void configureContentNegotiation(
              ContentNegotiationConfigurer configurer) {
          configurer.favorPathExtension(false);
      }
  
      /**
       * +对于header中的中文字进行解码
       *
       * @return 转换结果
       */
      @Bean
      public StringDecoderForHeaderConverter stringHeaderConverter() {
          return new StringDecoderForHeaderConverter(Charset.forName("UTF-8"));
      }
  }