01为什么使用过滤器?
我们目前书写项目中遇到的问题?
A、目前使用的baseServlet的优点就是方便可以进行乱码的统一的处理,但是如果我们以后不使用servlet,那么我们在进行中文乱码处理的时候就需要在每一个servlet 中去书写,但是比较麻烦。
B、在进行登陆拦截处理的时候,我们需要把拦截的代码在每一个页面中重复的书写,这样,就会变的非常的麻烦。
最终的问题: 重复的代码在项目中多次的使用书写。
解决方案: 过滤器
02什么是过滤器?
第一节 使用过滤器进行乱码解决
Class文件
public class EncFilter implements Filter { //初始化方法 --执行一次 String abc; @Override public void init(FilterConfig filterConfig) throws ServletException { //UTF-8 abc = filterConfig.getServletContext().getInitParameter("abc"); } //服务请求方法---执行多次 @Override public void doFilter(ServletRequest req, ServletResponse resp, FilterChain chain) throws IOException, ServletException { //到达目标资源之前的处理操作 req.setCharacterEncoding(abc); //执行下一个过滤器或者目标资源 chain.doFilter(req,resp); //离开服务器之前的处理操作 } //销毁--执行一次 @Override public void destroy() { }
|