记录用户访问页面的记录。

注意一定要加

context.BeginRequest += new EventHandler(context_BeginRequest);

因为它的 init 事件只会执行一次。而 BeginRequest  事件则每次请求都会执行。

 

 

using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.Services;

    /// <summary>
    /// $codebehindclassname$ 的摘要说明
    /// </summary>
    [WebService(Namespace = "http://tempuri.org/")]
    [WebServiceBinding(ConformsTo = WsiProfiles.BasicProfile1_1)]
    public class RecordHandler : IHttpModule
    {

        private void InsertRecord(HttpApplication context)
        {
            string connString = System.Configuration.ConfigurationManager.ConnectionStrings["connString"].ConnectionString;
            DataAccess.SqlProvider db = new DataAccess.SqlProvider(connString);
            string pageName = context.Context.Request.FilePath;

            string sqlText = string.Format("insert into tbpageRecord(page) values('{0}')", pageName);
            db.ExecuteSQL(sqlText);
            db.disCounect();
        }

        #region IHttpModule 成员

        void IHttpModule.Dispose()
        {
            throw new NotImplementedException();
        }

        void IHttpModule.Init(HttpApplication context)
        {
            context.BeginRequest += new EventHandler(context_BeginRequest);
           
        }

        void context_BeginRequest(object sender, EventArgs e)
        {
            HttpApplication context = (HttpApplication)sender;
            InsertRecord(context);
        }

        #endregion

 
    }

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
可以利用浏览器的 Cookie 功能,在用户访问网页时记录访问次数。 在 JSP 中,可以通过以下步骤实现: 1. 判断浏览器是否存在名为 "visitCount" 的 Cookie,如果存在,则获取 Cookie 中保存的访问次数,并将访问次数加 1;如果不存在,则说明是用户首次访问页面,将访问次数设置为 1。 ```java int visitCount = 1; Cookie[] cookies = request.getCookies(); if (cookies != null) { for (Cookie cookie : cookies) { if (cookie.getName().equals("visitCount")) { visitCount = Integer.parseInt(cookie.getValue()); visitCount++; cookie.setValue(String.valueOf(visitCount)); response.addCookie(cookie); break; } } } ``` 2. 如果 Cookie 不存在,或者无法获取 Cookie 中保存的访问次数,则新建一个名为 "visitCount" 的 Cookie,并将访问次数设置为 1。 ```java if (cookies == null || visitCount == 1) { Cookie cookie = new Cookie("visitCount", String.valueOf(visitCount)); response.addCookie(cookie); } ``` 3. 在页面中显示访问次数。 ```html <p>您是第 <%= visitCount %> 次访问页面。</p> ``` 完整的 JSP 代码如下: ```jsp <%@ page contentType="text/html;charset=UTF-8" %> <% int visitCount = 1; Cookie[] cookies = request.getCookies(); if (cookies != null) { for (Cookie cookie : cookies) { if (cookie.getName().equals("visitCount")) { visitCount = Integer.parseInt(cookie.getValue()); visitCount++; cookie.setValue(String.valueOf(visitCount)); response.addCookie(cookie); break; } } } if (cookies == null || visitCount == 1) { Cookie cookie = new Cookie("visitCount", String.valueOf(visitCount)); response.addCookie(cookie); } %> <html> <head> <title>统计访问次数</title> </head> <body> <p>您是第 <%= visitCount %> 次访问页面。</p> </body> </html> ```
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值