Servlet之创建与配置

上篇已将介绍完了,下面来实践操作走一个:

首先在名为"com.caiduping"的包中创一个MyFilter的对象:

 1 package com.caiduping;
 2 
 3 import java.io.IOException;
 4 
 5 import javax.servlet.Filter;
 6 import javax.servlet.FilterChain;
 7 import javax.servlet.FilterConfig;
 8 import javax.servlet.ServletException;
 9 import javax.servlet.ServletRequest;
10 import javax.servlet.ServletResponse;
11 import javax.servlet.http.HttpServletRequest;
12 import javax.servlet.ServletContext;
13 
14 public class MyFilter implements Filter {
15     private int count;
16     @Override
17     public void destroy() {
18         // TODO Auto-generated method stub
19 
20     }
21     //过滤处理方法
22     @Override
23     public void doFilter(ServletRequest request, ServletResponse response,
24             FilterChain chain) throws IOException, ServletException {
25         // TODO Auto-generated method stub
26         count++;
27         //将ServletRequest转化为HttpServletRequest
28         HttpServletRequest re=(HttpServletRequest) request;
29         //获取ServletContext
30         ServletContext Context=re.getSession().getServletContext();
31         //将数值存放于ServletContext中
32         Context.setAttribute("count", count);
33         //向下传递过滤器
34         chain.doFilter(request, response);
35     }
36     //初始化方法
37     @Override
38     public void init(FilterConfig filterConfig) throws ServletException {
39         // TODO Auto-generated method stub
40         //获得初始化参数
41         String paramter=filterConfig.getInitParameter("count");
42         //将字符串转化为int型
43         count=Integer.valueOf(paramter);
44     }
45 
46 }

  

web.xml中配置为:

1 <?xml version="1.0" encoding="UTF-8"?>
 2 <web-app version="3.0" 
 3     xmlns="http://java.sun.com/xml/ns/javaee" 
 4     xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
 5     xsi:schemaLocation="http://java.sun.com/xml/ns/javaee 
 6     http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd">
 7   <display-name></display-name>         
 8   <welcome-file-list>
 9     <welcome-file>index.jsp</welcome-file>
10   </welcome-file-list>
11   <!-- 过滤声明 -->
12   <filter>
13     <filter-class>com.caiduping.MyFilter</filter-class>
14     <filter-name>count</filter-name>
15     <init-param>
16     <param-name>count</param-name>
17     <param-value>500</param-value>
18     </init-param>
19   </filter>
20         <!-- 过滤映射 -->    
21         <filter-mapping>
22         <filter-name>count</filter-name>
23         <!-- 过滤URL映射 --> 
24         <url-pattern>/*</url-pattern>      
25         </filter-mapping>
26   
27 </web-app>

  

run:(刷新逐渐递增)

 

你可能感兴趣的:(Servlet之创建与配置)