戏说java web开发中的listener和filter

欢迎进入Java社区论坛,与200万技术人员互动交流 >>进入

  publicvoiddoFilter(ServletRequestrequest,ServletResponseresponse,

  FilterChainchain)throwsIOException,ServletException…{

  HttpServletRequestreq=(HttpServletRequest)request;

  HttpServletResponsersp=(HttpServletResponse)response;

  if(req.getRequestURI().toString().endsWith(“money.jsp”))…{

  //什么时候有过钱啊?打回北京去

  rsp.sendRedirect(“gohome.jsp”);

  System.out.println(“什么时候有过钱啊,滚回家去!”);

  return;

  }elseif(req.getRequestURI().toString().endsWith(“hongshu.jsp”))…{

  if(BigBag.bag.containsKey(“hongshu”))…{

  intnum=BigBag.bag.get(“hongshu”)+1;

  BigBag.bag.put(“hongshu”,num);

  System.out.println(“得到第”+num+”个红薯”);

  }else…{

  BigBag.bag.put(“hongshu”,1);

  System.out.println(“得到第1个红薯”);

  }

  //村长同意了,下面就是到村民家中拿了。。

  chain.doFilter(request,response);

  }else…{

  //只要不要钱就行,放行

  chain.doFilter(request,response);

  }

  }

  publicvoidinit(FilterConfigfilterConfig)throwsServletException…{

  }

  }

  6. 在web.xml中配置监听器和过滤器,如下所示:

  <?xmlversion=”1.0″encoding=”UTF-8″?>

  <web-appversion=”2.4″xmlns=”http://java.sun.com/xml/ns/j2ee”

  xmlns:xsi=”http://www.w3.org/2001/XMLSchema-instance”

  xsi:schemaLocation=”http://java.sun.com/xml/ns/j2ee

  http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd”>

  <filter>

  <filter-name>myFilter</filter-name>

  <filter-class>chb.demo.web.MyFilter</filter-class>

  </filter>

  <filter-mapping>

  <filter-name>myFilter</filter-name>

  <url-pattern>/*</url-pattern>

  </filter-mapping>

  <listener>

  <listener-class>chb.demo.web.MyListener</listener-class>

  </listener>

  <welcome-file-list>

  <welcome-file>index.jsp</welcome-file>

  </welcome-file-list>

  </web-app>

  好了,大功告成,部署运行,观察结果怎样?

  分析结果

  我们会观察到如下结果:

  当服务启动过程中,控制台输出“要进山了,准备好布袋子”

  当点击一下“给红薯”的链接时,控制台会输出“得到第x个红薯”

  当点击一下“给钱”的链接时,控制台输出“什么时候有过钱啊,滚回家去!”

  怎么样?有点明白了?

  其实,监听器就是在服务启动之前做好保证服务正常运行的准备工作,服务结束的时候再善后一下;对应案例中的情况,就是在上路之前把袋子准备好,回来了把袋子扔掉;类似保姆的工作,照顾孩子起床,再照顾孩子睡下。

  过滤器就是针对服务器的请求,加以过滤限制;对应案例中的情况,就是村长了,掌握着生杀大权,什么事都得过我这关才行^_^

[1][2]

最可怕的敌人,就是没有坚强的信念。

戏说java web开发中的listener和filter

相关文章:

你感兴趣的文章:

标签云: