package com.lgt.filter;
import javax.servlet.Filter;
import org.springframework.boot.web.servlet.FilterRegistrationBean;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import org.springframework.web.filter.CharacterEncodingFilter;
@Configuration
public class MyFilterConfig {
@Bean
public FilterRegistrationBean<Filter> myCharaterEncoding(){
FilterRegistrationBean<Filter> myFilter = new FilterRegistrationBean<>();
CharacterEncodingFilter encodingFilter = new CharacterEncodingFilter();
encodingFilter.setForceEncoding(true);
myFilter.setFilter(encodingFilter);
myFilter.addUrlPatterns("/*");
return myFilter;
}
}
2.在启动类添加包扫描
3.application.properties中spring.http.encoding.enabled=false否则过滤器不会生效
不过Springboot给了更简单的方式
在application.properties中配置
spring.http.encoding.enabled=true
spring.http.encoding.force=true
spring.http.encoding.charset=UTF-8