jsp+servlet 20130925

Filter:过滤器:

实现javax.servlet.Filter接口

实现doFiter方法

chain.doFilter(req, resp);//继续向下执行.

Eg:

/**

 * 转码

 * @author Administrator

 *

 */

publicclass EncodeFilter implements Filter {

    private FilterConfig fc=null;

    @Override

    publicvoid destroy() {

       System.out.println("MyFilter.destroy");

    }

    @Override

    publicvoid doFilter(ServletRequest req, ServletResponse resp,

           FilterChain chain) throws IOException, ServletException{

       System.out.println("EncodeFilter.doFilter");

       HttpServletRequest request = (HttpServletRequest)req;

       HttpServletResponse response = (HttpServletResponse)resp;

       String encode = fc.getInitParameter("encode");

       request.setCharacterEncoding(encode);

       response.setCharacterEncoding(encode);

       chain.doFilter(request, response);

    }

    @Override

    publicvoid init(FilterConfig arg0) throws ServletException {

       this.fc=arg0;

    }

}

 


Listener:监听器:

实现ServletContextListener

eg:

publicclass MyServletContextListener implements ServletContextListener {

 

    @Override

    publicvoid contextDestroyed(ServletContextEvent arg0) {

       System.out.println("MyListener.contextDestroyed");

 

    }

    @Override

    publicvoid contextInitialized(ServletContextEvent event) {

       System.out.println("MyListener.contextInitialized");

    }

}

实现SessionListener

Eg:

publicclass MyHttpSessionListener implements HttpSessionListener {

 

    @Override

    publicvoid sessionCreated(HttpSessionEvent event) {

       ServletContext sc = event.getSession().getServletContext();

       int i=0;

       if(sc.getAttribute("num")==null){

           i=1;

       }else{

           i =  Integer.parseInt(sc.getAttribute("num").toString())+1;

       }

       sc.setAttribute("num", i);

       System.out.println("访问量:"+i);

       System.out.println("MyHttpSessionListener.sessionCreated");

    }

    @Override

    publicvoid sessionDestroyed(HttpSessionEvent arg0) {

           System.out.println("MyHttpSessionListener.sessionDestroyed");

    }

}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值