jsp内建对象方法,做一个网页能jsp实现登录功能这个功能的,谢谢了

【图文】第5章 JSP中的内建对象_百度文库
两大类热门资源免费畅读
续费一年阅读会员,立省24元!
评价文档:
第5章 JSP中的内建对象
上传于||暂无简介
大小:704.50KB
登录百度文库,专享文档复制特权,财富值每天免费拿!
你可能喜欢<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
您的访问请求被拒绝 403 Forbidden - ITeye技术社区
您的访问请求被拒绝
亲爱的会员,您的IP地址所在网段被ITeye拒绝服务,这可能是以下两种情况导致:
一、您所在的网段内有网络爬虫大量抓取ITeye网页,为保证其他人流畅的访问ITeye,该网段被ITeye拒绝
二、您通过某个代理服务器访问ITeye网站,该代理服务器被网络爬虫利用,大量抓取ITeye网页
请您点击按钮解除封锁&JSP实现网页访问统计
投稿:lijiao
字体:[ ] 类型:转载 时间:
这篇文章主要介绍了JSP实现网页访问统计方法,需要的朋友可以参考下
最近学习Jave EE 中的jsp网页开发,需要实现网页访问量的统计,刚开始不知道如何实现,后来问了一下老师,老师是这样回答我的:要实现网页访问的统计,你可以利用application对象来实现,不能用seesion对象,因为session是属于同一个会话的,关掉浏览器数据就没有了,而application是在同一浏览器下的,只要是同一个浏览器,将数据保存在applicaiton对象中,这样就可以保证数据的不变性。其实这些我都懂,我只是不知道如何在jsp用代码实现。后来我只能上网看看有没有具体的解决方案,搜了很久,没有我想要的答案,我想要实现的只是简单的统计,没有实现更加复杂的功能。后来还是在CSDN这里找到了答案,在这里简单总结一下实现网页访问统计的几种方法:
1. 利用application对象进行统计,得到的效果是每进入一次该网页就统计一次。但效果不怎么好,因为一般统计网页访问量,刷新是不算进统计里的,这里就是这种缺点。
具体实现是:
&%@ page language="java" import="java.util.*" pageEncoding="GB2312"%&
&title&java 计数器程序&/title&
if (application.getAttribute("count") == null) {
application.setAttribute("count", new Integer(0));
Integer count = (Integer) application.getAttribute("count");
application
.setAttribute("count", new Integer(count.intValue() + 1));
count = (Integer) application.getAttribute("count");
&center&这是第&%=count.intValue()%&个访问者&/center&
&2.为了解决上面的问题,有了另一种方法,就是同时利用application对象和session对象来统计,这种方法的原理是从打开浏览器到关闭浏览器算是访问一次,刷新、返回等操作不算做一次访问。但还是有缺陷,当jsp服务器从新启动时,数据也被清零了。
下面还是具体实现:
&%@ page language="java" import="java.util.*" pageEncoding="GB2312"%&
&title&java 计数器程序&/title&
int n = 0; String counter = (String)application.getAttribute("counter");
if(counter != null){
n = Integer.parseInt(counter);
if(session.isNew())
&center&这是第&%out.print(n);%&个访问者&/center&
counter = String.valueOf(n);
application.setAttribute("counter", counter);
3. 第三种方法是将统计数据存储在本地的文件当中,比如存储在一个txt文件当中。
这是为了解决重启服务器之后数据不用担心会丢失。
创建一个类:JSPCount
import java.io.BufferedR
import java.io.F
import java.io.FileNotFoundE
import java.io.FileR
import java.io.FileW
import java.io.IOE
import java.io.PrintW
public class JSPCount {
//写入文件的方法
public static void write2File(String filename, long count){
PrintWriter out = new PrintWriter(new FileWriter(filename));
out.println(count);
out.close();
} catch (IOException e) {
// TODO: handle exception
e.printStackTrace();
//读文件的方法
public static long readFromFile(String filename){
File file = new File(filename);
long count = 0;
if(!file.exists()){
file.createNewFile();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
write2File(filename, 0);
BufferedReader in = new BufferedReader(new FileReader(file));
count = Long.parseLong(in.readLine());
catch (NumberFormatException e) {
// TODO: handle exception
e.printStackTrace();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (FileNotFoundException e) {
// TODO: handle exception
e.printStackTrace();
&在WebRoot目录下建jsp文件:count.jsp
&%@ page language="java" import="java.util.*" pageEncoding="GB2312"%&
&%@ page import="org.wwj.count.JSPCount" %&
&title&java 计数器程序&/title&
JSPCount CountFileHandler = new JSPCount();
//读取文件
long count = CountFileHandler.readFromFile(request.getRealPath("/") + "count.txt");
count = count + 1; //修改记录 +1
out.print(count); //显示数据
//更新文件内容。
CountFileHandler.write2File(request.getRealPath("/") + "count.txt", count);
程序运行之后会在tomcat下的webapps目录下的对应的web项目生成一个count.txt文本文件
4.第四种方法,只是保存了访问的统计数据罢了,但没有保证刷新页面的时候不会自增,这样还是不好。当然总会有解决的办法的,一般的解决方案就是结合各种方案的优点。下面是由session对象+application对象+txt文本来实现网站的访问统计。
import java.io.BufferedR
import java.io.F
import java.io.FileNotFoundE
import java.io.FileR
import java.io.FileW
import java.io.IOE
import java.io.PrintW
import javax.servlet.http.HttpS
public class Counter extends HttpServlet{
//写入文件的方法
public static void write2File(String filename, long count){
PrintWriter out = new PrintWriter(new FileWriter(filename));
out.println(count);
out.close();
} catch (IOException e) {
// TODO: handle exception
e.printStackTrace();
//读文件的方法
public static long readFromFile(String filename){
File file = new File(filename);
long count = 0;
if(!file.exists()){
file.createNewFile();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
write2File(filename, 0);
BufferedReader in = new BufferedReader(new FileReader(file));
count = Long.parseLong(in.readLine());
catch (NumberFormatException e) {
// TODO: handle exception
e.printStackTrace();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (FileNotFoundException e) {
// TODO: handle exception
e.printStackTrace();
jsp文件代码:
&%@page import="org.servlet.count.Counter"%&
&%@ page language="java" import="java.util.*" pageEncoding="GB2312"%&
&title&java 计数器程序&/title&
Counter CountFileHandler = new Counter();
long count = 0;
if(application.getAttribute("count") == null){
count = CountFileHandler.readFromFile(request.getRealPath("/") + "count.txt");
application.setAttribute("count", new Long(count));
count = (Long)application.getAttribute("count");
if(session.isNew()){
application.setAttribute("count", count);
//更新文件目录
CountFileHandler.write2File(request.getRealPath("/") + "count.txt",count);
访问人数:&%=count %&
以上四种方法,是每一次改进才得到的方法,如果要实现网站访问统计,当然最后一种是最好的,知识不是一步登天,需要在问题上不断改进,获得最终的解决方案,当然最后一种不一定是最好的,实现策略上,如果可以利用数据库也是可以的,但我认为每次访问网站都要读和写数据库,这样效率就降低了。
您可能感兴趣的文章:
大家感兴趣的内容
12345678910
最近更新的内容
常用在线小工具比如用户可以在2个文本框里分别输入名称和链接地址,点保存后新建的链接更新到页面上。
页面刷新后可以读出已经添加的链接,并在相应的文本框里修改链接地址。
回复讨论(解决方案)
写点击事件,在点击事件中,如果两个文本框不为空就可以将其保存到session中,然后在界面进行
if(session[&文本框内容&]!=null){
在标签中显示你想要的
在标签中打印
我是新手,能不能给个例子。第一步用户输入链接地址并保存后能在网页上显示出来就行:-)
可以用js做结合dom做啊!如果要插入DB就要烦一点。
function&addClj(){
var&aName=&$(&#aName&).val();
var&aHref=$(&#aHref&).val();
var&aPath=&&a&href='&+aHref+&'&&+aName+&&/a&&
&&&&&&&&$(&#result&).html(aPath);
超链接名字:&input&type=&text&&id=&aName&/&
超链接地址:&input&type=&text&&id=&aHref&&
&input&type=&button&&value=&确定&&onclick=&addClj();&&
&div&id=&result&&&/div&练习jQuery的时候这么写了一个,给你参考下
跟别的系统要整合只能用jsp,我现在就是不知道点提交按钮后如何把文本框里的地址输出到页面上的一个链接
我觉得可以用数据库添加保存&然后从数据库里面获取。。
我觉得可以用数据库添加保存&然后从数据库里面获取。。
也可以保存到文件,然后从文件里读取我做了一个博客,想实现添加好友功能,须怎么实现该功能,我用的是JSP工具编写的,请详细解答!!_百度知道}

我要回帖

更多关于 jsp实现登录功能 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信