日期:2014-05-18  浏览次数:20623 次

求Java网站访问统计代码!
谁有这样的代码啊,借小弟用一用啊

------解决方案--------------------
这个应该好做吧?
做一个静态变量,然后自动递增就行
------解决方案--------------------
用servlet来计算吧
------解决方案--------------------
import javax.servlet.http.*;
import javax.servlet.*;
import java.util.*;

public class onLineUser implements HttpSessionBindingListener {
public onLineUser(){
}

private Vector users=new Vector();
public int getCount(){
users.trimToSize();
return users.capacity();
}
public boolean existUser(String userName){
users.trimToSize();
boolean existUser=false;
for (int i=0;i <users.capacity();i++ )
{
if (userName.equals((String)users.get(i)))
{
existUser=true;
break;
}
}
return existUser;
}

public boolean deleteUser(String userName) {
users.trimToSize();
if(existUser(userName)){
int currUserIndex=-1;
for(int i=0;i <users.capacity();i++){
if(userName.equals((String)users.get(i))){
currUserIndex=i;
break;
}
}
if (currUserIndex!=-1){
users.remove(currUserIndex);
users.trimToSize();
return true;
}
}
return false;
}

public Vector getOnLineUser()
{
return users;
}
public void valueBound(HttpSessionBindingEvent e) {
users.trimToSize();
if(!existUser(e.getName())){
users.add(e.getName());
System.out.print(e.getName()+ "\t 登入到系统\t "+(new Date()));
System.out.println( " 在线用户数为: "+getCount());
}else
System.out.println(e.getName()+ "已经存在 ");
}

public void valueUnbound(HttpSessionBindingEvent e) {
users.trimToSize();
String userName=e.getName();
deleteUser(userName);
System.out.print(userName+ "\t 退出系统\t "+(new Date()));
System.out.println( " 在线用户数为: "+getCount());
}
}


<%@ page contentType= "text/html;charset=gb2312 " %>
<%@ page import= "onLineUser,java.util.* " %>
<jsp:useBean id= "onlineuser " class= "onLineUser " scope= "application "/>
<html>
<head>
<title> 搞定JSP在线人数 </title>
</head>
<body>
<center>
<p> <h1> 登陆成功,欢迎您访问Java家! </h1> </p>
</center>
<% session = request.getSession(false); %>
<%
String username=request.getParameter( "username ");
if (onlineuser.existUser(username)){
out.println( "用户 <font color=red> "+username+ " </font> 已经登陆! ");
}else{
session.setMaxInactiveInterval(50); //Sesion有效时长,以秒为单位
session.setAttribute(username,onlineuser);
out.println( "欢迎新用户: <font color=red> "+username+ " </font> 登陆到系统! ");
}
out.println( " <br> 当前在线用户人数: <font color=red> "+onlineuser.getCount()+ " </font> <br> ");
Vector vt=onlineuser.getOnLineUser();
Enumeration e = vt.elements();
out.println( "在线用户列表 ");
out.println( " <table border=1> ");
out.println( " <tr> <td> 用户名 </td> </tr> ");
while(e.hasMoreElements()){
out.println( " <tr> <td> ");
out.println((String)e.nextElement()+ " <br> ");
out.println( " </td> </tr>