您的位置:首页 > 运维架构 > 网站架构

JSP使用网站访问人数统计功能,方法与技巧

2013-09-16 21:41 513 查看


JSP使用网站访问人数统计功能,方法与技巧

 

实现网站访问人数统计功能的步骤:                                        
创建静态登录页面,并指定表单提交由登录处理页面进行处理。
创建登录处理页面获得登录信息,查询数据库,判断该用户是否注册,如果该用户已注册,把已登录用户的信息保存在一个全局范围内。
在新闻发布系统左导航栏中加入超链接,用来导航到右侧的已访问人数统计页面。
创建已访问人数统计页面,从全局范围内取出访问者个数并显示。        

 

需求:                                                              

  为**系统增加已访问人数统计功能。

关键代码:                                                           

1、创建静态登录页面login2.html        

1 <form method="POST" name="form1" action="login2.jsp">


2、创建登录处理页面login2.jsp,把已登录用户的信息保存在一个全局范围内        

if (rs.next()) {
User logineduser = new User(name, pass);
session.setAttribute("LOGINED_USER", logineduser);
List loginedUsers = new ArrayList();  //访问者列表
if (application.getAttribute("LOGINED_USER") != null) {
// 从全局范围内取出原有的访问者列表
loginedUsers = (List) application.getAttribute("LOGINED_USER");
}
// 把新登录用户的信息存入访问者列表中
loginedUsers.add(logineduser);
application.setAttribute("LOGINED_USER", loginedUsers);
response.sendRedirect("index.jsp");
}


3、在新闻发布系统左导航left.jsp页面中加入超链接         

1 <a href="showAllLoginedUsers.jsp" target="mainFrame">已访问人数统计</a>


4、创建已访问人数统计页面showAllLoginedUsers.jsp        

<html>
<%
// 访问者列表
List loginedUsers = new ArrayList();
// 从全局范围内取出访问者列表
if (application.getAttribute("LOGINED_USER") != null) {
loginedUsers = (List) application.getAttribute("LOGINED_USER");
}
%>
<body>
<p align="center"><br><br><br>
目前,有<%=loginedUsers.size()%>人已经访问过本网站!<br><br>
访问者的登录名称分别是:<br>
<%
for (int i = 0; i < loginedUsers.size(); i++) {
User logineduser = (User) loginedUsers.get(i);
out.print(logineduser.getName());
out.print("<br/>");
}
%>
</p>
</body>
</html>


 

实现网站访问人数统计功能的方法和技巧                                   
application对象是全局对象,存放在服务器端,供访问该网站的所有用户共享,所以很耗服务器资源,一般在网站用户访问量较小的情况下使用application对象。
使用application全局变量来存储已访问用户的信息集合,在读取和更改集合时都要对application对象进行强制类型转换。
当重新开启一个浏览器窗口,已访问人数会增加,并在页面上显示出这个用户的信息。
网站一旦因意外重启,则application对象将被重置,计数从0开始,所以通常将统计已访问用户信息存放到数据库中。

 

不使用实现网站访问人数统计功能的方法和技巧的后果                       
如果用户访问人数过多,使用application对象来存储已访问用户信息,容易导致服务器负载过重而死机。
使用application对象不进行强制类型转换,会引发程序运行错误。
网站一旦因意外重启,application对象将被重置,计数从0开始,导致以往已访问网站用户的历史记录丢失。







内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  导航 访问量 JSP Java