springboot中解决servlet乱码问题,使用配置类注册过滤器解决

8.1 使用传统的Spring提供的字符编码过滤器

  • 在03-springboot-web中的ServletConfig中配置文件类,注册字符编码过滤器
   @Bean
    public FilterRegistrationBean characterEncodingFilterRegister(){
        FilterRegistrationBean filterRegistrationBean=new FilterRegistrationBean();
        CharacterEncodingFilter characterEncodingFilter=new CharacterEncodingFilter();
        characterEncodingFilter.setForceEncoding(true);
        characterEncodingFilter.setEncoding("UTF-8");
        filterRegistrationBean.setFilter(characterEncodingFilter);
        filterRegistrationBean.addUrlPatterns("/*");
        return  filterRegistrationBean;

    }

 

在application.properties中设置spring.http.encoding.enabled=true也能解决乱码问题。

推荐使用配置的方式:

# 设置请求响应的字符编码
spring.http.encoding.charset=UTF-8
spring.http.encoding.enabled=true
spring.http.encoding.force=true

 

posted on 2019-06-18 17:55  荆棘人  阅读(1521)  评论(0编辑  收藏  举报

导航