1. 程式人生 > 實用技巧 >springboot配置字元編碼

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