添加一个过滤器,设置请求和响应编码为UTF-8
public class BaseFilter implements Filter {
@Override
@SneakyThrows
public void doFilter(ServletRequest servletRequest, ServletResponse servletResponse, FilterChain filterChain) {
HttpServletRequest request = (HttpServletRequest) servletRequest;
//设置请求编码和响应编码
request.setCharacterEncoding("UTF-8");
servletResponse.setCharacterEncoding("UTF-8");
filterChain.doFilter(request, servletResponse);
}
@Override
public void init(FilterConfig config) {
}
@Override
public void destroy() {
}
}
在Application中注册此过滤器
@SpringBootApplication
public class AnimalApplication {
public static void main(String[] args) {
SpringApplication.run(AnimalApplication.class, args);
}
//添加一个基本过滤器,用于设置编码,调试观察请求数据
@Bean
public FilterRegistrationBean registerBaseFilter() {
FilterRegistrationBean registration = new FilterRegistrationBean();
registration.setFilter(new BaseFilter());
registration.addUrlPatterns("/*");
registration.setOrder(1);
return registration;
}
}