zoukankan      html  css  js  c++  java
  • 使用监听器监听用户访问页面的次数

    /**

    创建SesstionListener类实现  HttpSessionListener  接口   写如下代码

    */

    public void sessionCreated(HttpSessionEvent arg0) {
      ServletContext application =arg0.getSession().getServletContext();
      int count=1;
      if(application.getAttribute("count")!=null){
      count=(Integer)application.getAttribute("count");           //获取application的值          

      count++;                                                                           这一段就是判断application的值  如果不为空就获取count并且+1  在存到application中
      application.setAttribute("count", count);
    }
      application.setAttribute("count", count);
    }

    @Override
    public void sessionDestroyed(HttpSessionEvent arg0) {
      ServletContext application =arg0.getSession().getServletContext();
      Integer count=(Integer)application.getAttribute("count");
      count--;
      application.setAttribute("count", count);
    }

    /**

    配置Eeb.XML文件   如下

    */

    <listener>
      <listener-class>cn.yct.Listeren.SessionAttListener</listener-class>     //包名.类名
    </listener>
    <listener>
      <listener-class>cn.yct.Listeren.SesstionListener</listener-class>         //包名.类名

    </listener>

    /**

    创建  CountServlet   继承  HttpServlet  实现她的方法   写如下代码

    */

    public void doGet(HttpServletRequest request, HttpServletResponse response)
    throws ServletException, IOException {

      response.setContentType("text/html;charset=utf-8");
      PrintWriter out = response.getWriter();
      HttpSession session=request.getSession();        //创建Sessions对象
      String name=request.getParameter("name");      //获取登录的用户名
      if(name!=null){
        request.getRequestDispatcher("/Login/success.jsp").forward(request, response);     //跳转到登录成功的页面
        session.setMaxInactiveInterval(10);       //设置session的失效
    }

    /**

    主页面   登录的页面

    */

    <form action="CountServlet">    
       <table>
        <tr>
          <td>用户名:</td>
          <td><input type="text" name="name"></td>
        </tr>
        <tr>
          <td><input type="submit" value="提交"></td>
        </tr>
      </table>
    </form>

  • 相关阅读:
    iOS 项目中的NSNotification简单使用
    IOS开发之格式化日期时间的使用 && 编程中常见问题
    linker command failed with exit code 1 (use -v to see invocation),经典Xcode编译错误的出现和解决!
    CocoaPods安装和使用教程
    机器学习算法--贝叶斯分类器(二)
    机器学习算法--贝叶斯分类器(一)
    Linux系统初始化过程及运行级别简介
    Linux基本符号
    索引节点inode详解
    Linux文件类型介绍
  • 原文地址:https://www.cnblogs.com/y-c-t/p/8313473.html
Copyright © 2011-2022 走看看