首先是JSP页面文件,代码很简单,只有几行,主要代码放在javaBean类中:
(注意我利用图片显示访问量的数字,我是放在站点的images下的digit文件夹下)
这里的第一个javaBean设置成session是让每次同一人访问只算一次,除非他关闭浏览器,再进来才算两次。
这样同一次访问,刷新页面不累计访问量。
<% @ page language = " java " import = " java.util.*,java.io.* " pageEncoding = " gb2312 " %>
<% @ taglib prefix = " c " uri = " http://java.sun.com/jsp/jstl/core " %>
< html >
< head >
< title > LinQifo </ title >
</ head >
< body >
< jsp:useBean id = " a " scope = " session " class = " linQifoP41.addone " />
< jsp:useBean id = " b " scope = " page " class = " linQifoP41.display " />
已经有 <% b.counter();
for ( int i = 9 ;i >= 0 ; -- i)
{
out.print(b.img[i]);
}
%> 人访问该网页,欢迎您!
</ body >
</ html >
接下来是addone.java类,用来使访问量+1
package linQifoP41;
import java.io. * ;
public class addone {
public addone()
{
try
{
String path = "" ;
File f = new File(path, " counter.txt " );
if (f.exists())
{
FileReader fr = new FileReader(path + " counter.txt " );
BufferedReader br = new BufferedReader(fr);
String s = br.readLine();
int i = Integer.parseInt(s);
i ++ ;
System.out.print(i);
br.close();
s = Integer.toString(i);
FileWriter fw1 = new FileWriter(path + " counter.txt " );
PrintWriter pw = new PrintWriter(fw1);
pw.println(s);
pw.close();
}
else
{
f.createNewFile();
FileWriter fw = new FileWriter(path + " counter.txt " );
BufferedWriter bw = new BufferedWriter(fw);
bw.write( " 1 " );
bw.flush();
fw.close();
}
}
catch (IOException e)
{
System.out.print(e.toString());
}
}
}
第二个是用来显示访问量结果的display.java
package linQifoP41;
import java.io. * ;
public class display {
public String[] img = new String[ 10 ];
// 读取文件
public void counter()
{
try
{
String path = "" ;
File f = new File(path + " counter.txt " );
if (f.exists())
{
FileReader fr = new FileReader(path + " counter.txt " );
BufferedReader br = new BufferedReader(fr);
String s = br.readLine();
int i = Integer.parseInt(s);
int st = 10 ;
int j = 0 ;
while (j <= 9 )
{
img[j] = Integer.toString(i % st);
img[j] = img[j] + " .jpg " ;
img[j] = " images/digit/ " + img[j];
img[j] = " <img src= " + img[j] + " > " ;
img[j] += " </img> " ;
i /= 10 ;
j ++ ;
}
}
else
{
System.out.print( " counter.txt文件不存在! " );
}
}
catch (IOException e)
{
System.out.print(e.toString());
}
}
}
分享到:
相关推荐
jsp简单的编程代码,实现显示您是第几位访问者
在Web开发中,我们常常需要跟踪并记录用户的访问量,例如在网站的首页显示“今日访问人数”或“总访问次数”。JSP(JavaServer Pages)作为动态网页技术之一,提供了实现这种功能的能力。本篇将深入探讨如何在JSP中...
基于jsp的访问人数统计,一个简单的小程序,网友们可自由借鉴使用
在构建一个能够记录网站访问人数的系统时,我们需要考虑的关键知识点包括前端用户界面设计、后端数据处理以及数据库存储。以下是对这些关键领域的详细说明: 首先,**前端用户界面设计**是用户与网站互动的桥梁。在...
本项目以"jsp_servlet在线人数"为主题,旨在实现一个功能,即实时统计网站的在线用户数量以及注册用户的总数。下面将详细介绍如何利用JSP和Servlet来实现这一功能。\n\n1. **JSP基础**\n JSP是一种基于Java的服务器...
【jsp网页计数器实现示例】是一个典型的Java Web应用程序中的功能,用于记录网页被访问的次数。在Java Web开发中,计数器通常通过Servlet、JSP或Filter来实现,这里采用的是Filter。Filter是Java Servlet API的一...
在Web开发中,实时在线人数统计是一项常见的需求,它可以帮助网站管理员了解当前有多少用户正在访问网站,以便优化资源分配和服务质量。JSP(JavaServer Pages)作为Java Web开发的重要组成部分,可以方便地实现这一...
5. **实时展示**:将统计结果实时展示在网站上,可以通过JSP页面显示当前在线人数和累计访问量,数据可以从内存或数据库中获取。 6. **日期计算**:Java的java.time包提供了丰富的日期和时间API,如LocalDate、...
在这个例子中,我们将关注如何实现这样一个计数器,特别是针对首次访问网站的IP地址进行计数,并跟踪每个IP地址的访问次数。 首先,我们需要理解“新用户”在Web场景中的定义。通常,新用户是指首次访问网站的独立...
本系统完全基于JSP(JavaServer Pages)技术,提供了一系列核心功能,包括网站计数器、用户停留时间统计、实时在线人数统计以及网站访问量统计。本文将深入探讨这些功能的实现原理及应用价值。 首先,网站计数器是...
Java JSP(JavaServer Pages)流量统计系统是一种基于Web的应用程序,旨在帮助网站管理员实时监测和分析他们的网站访问流量。这个系统利用JSP技术来构建动态网页,通过收集、处理和展示数据,提供关于网站用户行为、...
这可能需要设计一个访问日志表,并在用户访问时插入一条记录,同时提供查询历史访问人数的接口。 4. **JSP技术**: JSP是Java平台上的动态网页技术,它允许在HTML中嵌入Java代码,实现动态内容生成。在本实例中,...
在JavaServer Pages (JSP) 开发中,统计在线人数是一项常见的需求,它可以帮助网站管理员了解站点的活跃度。本文将详细阐述如何利用JSP中的`application`对象来实现在线人数的统计。 `application`对象在JSP中代表...
每次用户访问网站时,系统可以通过增加`application`对象中的计数器来记录访问量。这种方法的一个缺点是它无法区分是否为真正的“新访问”,即刷新页面也会被计入访问量中。 ##### 2.2 实现代码 ```jsp *" ...
统计上网人数的核心思路是:每当一个用户访问网站时,我们增加Application中的计数器;当用户离开或会话超时时,我们减少计数器。以下是一个简单的实现步骤: 1. **初始化计数器**:在Global.asax文件的`...
这种全局变量可以在整个Web应用程序的所有用户和页面之间共享,常用于统计网站访问量、在线人数等场景。 综上所述,JSP提供了一套强大的工具和指令来构建动态网页,包括页面结构定义、模板包含、请求参数处理、会话...
在本文中,我们将深入探讨Java EE(J2EE)中的Servlet监听器以及它们在Web应用程序中的作用,特别是在访问人数统计和引入MVC模式方面。首先,让我们了解什么是Servlet监听器。 Servlet监听器是Java Servlet规范的一...
在Java Web开发中,"访问量"通常是指网站或应用程序被用户访问的次数。这是一个重要的指标,用于评估网站的受欢迎程度、流量以及潜在的商业价值。实现这一功能,开发者需要跟踪并记录每次用户请求,而这里提到的方法...
这通常需要在服务器端维护一个计数器,每当有新的会话开始时增加计数,会话结束时减少计数。可以设定一个心跳机制,如果用户在一定时间内没有发送任何请求,认为会话结束。此外,为了防止计数错误,可能还需要考虑...
当用户离开时,由于Session超时,计数器不会减1,但这种统计方法通常只能近似反映在线人数,因为用户关闭浏览器并不会立即从计数器中移除。 ```jsp Integer number = (Integer)application.getAttribute("Count"); ...