监听器Listener

监听器:对Web应用对象的行为进行监控,自动触发指定功能代码。

  • 实现XxxListener接口, 不同接口对应不同监听对象
  • 在web.xml中配置<listener>(或者使用注解形式配置@WebListener)

        

第一个监听器ServletContextListener

public class FirstListener implements ServletContextListener {

	@Override
	public void contextDestroyed(ServletContextEvent sce) {
		// TODO 自动生成的方法存根
		System.out.println("ServletContextListener已经销毁");
	}

	@Override
	public void contextInitialized(ServletContextEvent sce) {
		// TODO 自动生成的方法存根
		System.out.println("ServletContextListener已经初始化");
	}

}

web.xml配置

  <listener>
      <listener-class>com.ulikeme.listener.FirstListener</listener-class>
  </listener>


内置对象监听器

创建 HelloServlet.java

protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
		// TODO Auto-generated method stub
		response.getWriter().println("hello servlet");
		request.getServletContext().setAttribute("sc-attr1", "sc-attr-v1");
		request.getSession().setAttribute("sc-attr2","sc-attr2-v2" );
		request.setAttribute("rs-attr3", "rs-attr3-v3");
	}

WebListener.java


public class WebListener implements ServletContextListener,HttpSessionListener,ServletRequestListener {

	@Override
	public void requestDestroyed(ServletRequestEvent sre) {
		// TODO 自动生成的方法存根
		System.out.println("httpRequest已销毁");
	}

	@Override
	public void requestInitialized(ServletRequestEvent sre) {
		// TODO 自动生成的方法存根
		HttpServletRequest request =(HttpServletRequest) sre.getServletRequest();
		System.out.println("httpRequest已被创建,uri:"+request.getRequestURI());
	}

	@Override
	public void sessionCreated(HttpSessionEvent se) {
		// TODO 自动生成的方法存根
		 HttpSession session =se.getSession();
		System.out.println("session已创建,sessionID:"+session.getId());
	}

	@Override
	public void sessionDestroyed(HttpSessionEvent se) {
		// TODO 自动生成的方法存根
		System.out.println("session已销毁");
	}

	@Override
	public void contextDestroyed(ServletContextEvent sce) {
		// TODO 自动生成的方法存根
		System.out.println("servletContext已销毁");
	}

	@Override
	public void contextInitialized(ServletContextEvent sce) {
		// TODO 自动生成的方法存根
		System.out.println("servletContext已初始化");
	}

}

web.xml

 <listener>
      <listener-class>com.ulikeme.listener.WebListener</listener-class>
  </listener>

   


 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值