• 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:(刷新逐渐递增)

    不努力,还要青春干什么?
  • 相关阅读:
    WPF DataGrid根据内容设置行颜色
    wpf: DataGridTextColumn 数字格式显示,编辑时取消格式(StringFormat)
    关于wpf,datagrid,双向数据绑定用法解决方案
    AddTransient、AddSingleton、AddScoped 三者都应该在什么场景下使用
    Fetch API 使用 fatch 函数调用 .netcore WebApi接口报错:Failed to fetch
    ASP.NET Core 中使用Session会话
    利用 Google Chart API 生成二维码大小不一致
    Razor Page 文件
    asp.net core 的 razor pages 如何使用ajax调用后台方法
    asp.net core 发布到iis session无法传递的问题
  • 原文地址:https://www.cnblogs.com/caidupingblogs/p/5257461.html
Copyright © 2020-2023  润新知