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>

  • 相关阅读:
    【图灵学院09】RPC底层通讯原理之Netty线程模型源码分析
    【图灵学院10】高并发之java线程池源码分析
    【图灵学院02】大型互联网技术之数据库分库分表
    【图灵学院01】Java程序员开发效率工具IntelliJ IDEA使用
    【OD深入学习】Java多线程面试题
    高级工程师->架构师
    架构师成长之路
    python--openCV--鼠标事件
    python--openCV--视频处理
    python--openCV
  • 原文地址:https://www.cnblogs.com/y-c-t/p/8313473.html
Copyright © 2011-2022 走看看