springboot18-设置字符编码
1、编写servlet
@WebServlet(urlPatterns = "/myencoding")
public class MySerlvet extends HttpServlet {
@Override
protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
resp.getWriter().print("你好世界");
resp.getWriter().flush();
resp.getWriter().close();
}
@Override
protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
doGet(req, resp);
}
}
2、启动类添加注解,启动启动类
@SpringBootApplication
@ServletComponentScan(basePackages = "com.study.springboot.servlet")
public class Springboot15Character1Application {
public static void main(String[] args) {
SpringApplication.run(Springboot15Character1Application.class, args);
}
}
3、页面出现乱码

4、编写字符过滤类
@Configuration //将此类定义为配置文件
public class CharacterEncoding {
@Bean
public FilterRegistrationBean characterEncodingFilter(){
//创建字符编码过滤器
CharacterEncodingFilter characterEncodingFilter = new CharacterEncodingFilter();
//设置强制使用指定字符编码
characterEncodingFilter.setForceEncoding(true);
//设置指定字符编码
characterEncodingFilter.setEncoding("utf-8");
FilterRegistrationBean filterRegistrationBean = new FilterRegistrationBean();
//设置字符编码过滤器
filterRegistrationBean.setFilter(characterEncodingFilter);
//设置字符编码过滤器路径
filterRegistrationBean.addUrlPatterns("/*");
return filterRegistrationBean;
}
}
5、编写配置文件,关闭springboot对http字符编码的支持
#关闭springboot的http字符编码支持
#只有关闭该选项后spring字符编码过滤器才生效
server.servlet.encoding.enabled=false
6、再MyServlet中统一浏览器的编码格式


浙公网安备 33010602011771号