springboot配置字符编码


这边主要有两种方式

方式一、使用传统的Spring提供的字符编码过滤器(Filter的方式)

因为,字符编码过滤器在框架中已经有了,所以我们不需要自己写了。直接进行配置类的实现:

@Configuration
public class CharacterConfig {
    @Bean
    public FilterRegistrationBean filterRegistrationBean(){

        //创建SpringWeb提供的字符编码过滤器,主要实现字符编码过滤
        CharacterEncodingFilter filter = new CharacterEncodingFilter();
        filter.setForceEncoding(true);//强制对请求的编码,
        filter.setEncoding("GBK");//使用GBK编码
        
        FilterRegistrationBean filterRegistrationBean = new FilterRegistrationBean();
        filterRegistrationBean.setFilter(filter);
        filterRegistrationBean.addUrlPatterns("/*");
        return filterRegistrationBean;
    }
}

上述方式表示将请求路径为“/”的所有请求都进行字符编码的过滤,具体过滤方式看set方法里面的内容。

注意:只有当application.properties配置文件中server.servlet.encoding.enabled=false时,上述编码过滤器才会工作。

 方式二、使用配置文件的方式进行字符编码

在配置文件中加入一下键值对:

#第一种加入编码的方式。这种方式好像现在的springboot不太推荐
server.servlet.encoding.enabled=true

#第二种方式:推荐的方式,第二种方式需要将上面的false改成true
server.servlet.encoding.charset=UTF-8
server.servlet.encoding.force=true


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM