1.servlet乱码问题

第一种方式:直接在配置文件中设置浏览器的解析编码的格式

  1. #设置字符编码
  2. #开启springboot的http字符编码的支持
  3. spring.http.encoding.enabled=true
  4. #强制使用指定字符编码
  5. spring.http.encoding.force=true
  6. #指定使用的字符编码
  7. spring.http.encoding.charset=UTF-8

第二种方式
  1.创建配置类,配置编码格式 

@Configuration
public class SystemConfig {
    @Bean
    public FilterRegistrationBean characterFilterRegistration() {
        //字符编码过滤器
        CharacterEncodingFilter characterEncodingFilter = new CharacterEncodingFilter();
        //强制使用指定字符编码
        characterEncodingFilter.setForceEncoding(true);
        //设置指定字符编码
        characterEncodingFilter.setEncoding("UTF-8");
        //创建过滤器注册bean对象
        FilterRegistrationBean filterRegistrationBean = new FilterRegistrationBean();
        //设置字符过滤器
        filterRegistrationBean.setFilter(characterEncodingFilter);
        //设置字符过滤器路径
        filterRegistrationBean.addUrlPatterns("/*");
        return filterRegistrationBean;
    }
}

  2)更改原配置文件,使我们的配置类起作用_

#关闭springboot工程对http字符编码的支持
#只有关闭该选项之后 ,spring字符编码过滤器才可生效
#注意在这里spirngboot的版本只能是2.2.6,不能是2.3.0要不然会失效
spring.http.encoding.enabled=false

注意:这两种添加对应的都是SpringBoot集成Servlet,但如果集成SpringMVC框架的话,我们什么都不用添加,因为SpringBoot已经给我们添加号的SpringMVC框架的编码过滤器了