jsp记录用户在某一个或者一组页面上停留时间

jsp怎么记录某用户在某一个或者一组页面上停留时间,并存入到数据库中....求大神解答... jsp怎么记录某用户在某一个或者一组页面上停留时间,并存入到数据库中....求大神解答 展开
 我来答
百科追击者
推荐于2016-08-03 · TA获得超过849个赞
知道小有建树答主
回答量:792
采纳率:40%
帮助的人:273万
展开全部
最简单的思路,在JSP页面new Date();用户一打开页面时,页面记录下当前时间,然後,当用户一关闭当前页面时,在关闭JS事件中通过AJAX方式传到后台,后台再次new Date()获得用户关闭操作的时间。

然后用关闭的时间 - 打开网页时间就是了。

----------------------------------------------------------------------------
你在后台计算出来停留的时间,插入数据库应该就简单了吧。
在Servlet中或者JSP中的数据库操作不懂就去百度吧。

--------------------------------------------------------------------------
下面是:当用户关闭页面时触发的JS事件代码供你参考一下:
/**
* **************************************************
* ******** 关闭窗口
* **************************************************
*/

function leaves(event){
var vbln = document.getElementById("vbel").value; // 订单号
var issolock = document.getElementById("issolock").value;
var params = {
tcode : "va03",
vbeln : vbln
};

$.ajax({
url : "extiopnAction", // 跳转的路径或者servlet/jsp/struts的路径
type : "post",
dataType : "json",
data : params, //所传递的参数
async : false, // 同步方式(false),客户机要等服务器返回信息後才去执行其他操作
// 异步请求前
// beforeSend:function(){
// document.getElementById("loadwin").style.display
// = "block";
// },
error : function() {
$("#savwin").hide();
alert("服务器异常!");
},
success : function(data) {
// if (data.stype == "s") {
// $("#icspan").html("<img alt=\"gif\" src=\"./img/suc.gif\" class=\"suimg\" />");
// $("#satxt").text(data.emess);
// setTimeout(function() {
// $("#savwin").hide();
// }, sec);
// isright = true;
// }
}
});
}

window.onbeforeunload = leaves; //关闭窗口前操作
**********************************************************************************

用ajax的好处就是保持页面不会被刷新!如果没这个需要,就用window.location.href="exitAction?currentDate="+currdate;吧
bdzhjik911
2014-03-02
知道答主
回答量:45
采纳率:0%
帮助的人:12.5万
展开全部
载入页面事件:获取当前时间,离开页面时获取当前时间,减一下存在变量里就是了
追问
那我怎么插入到数据库中呢?如果我点击超链接离开的话,还要跳到另外一个jsp去....
追答


用户名:

密 码:

在lib文件夹导入数据库启动后:

public Connection conn = null;// 数据库连接对象
public PreparedStatement pstmt = null;// statement的扩展,加入参数控制机制-“?”,调用SQL语句对数据库进行操作(封装JDBC执行SQL语句的方法)
public ResultSet rs = null;// 接收查询结果
private static String dbDriver = "com.microsoft.sqlserver.jdbc.SQLServerDriver";// 数据库驱动类型/地址
private static String dbUrl = "jdbc:sqlserver://localhost:1433;databaseName=Jsp_witSchoolSystem";
private static String dbUser = "sa";
private static String dbPwd = "123456";
try {
Class.forName(dbDriver);// 连接数据库驱动
conn = DriverManager.getConnection(dbUrl, dbUser, dbPwd);
// 向UserInfo存入读者信息
pstmt = conn
.prepareStatement("insert into UserInfo(CardNo,UserName,Pwd,Phone,[Identity],UserImage) values(?,?,?,?,?,?)");
pstmt.setString(1, CardNo);
pstmt.setString(2, UserName);
pstmt.setString(3, Pwd);
pstmt.setString(4, Phone);
pstmt.setString(5, Identity);
pstmt.setString(6, UserImage);
tf = pstmt.executeUpdate();
} catch (Exception e) {
e.printStackTrace();
}

没看书啊你,先去图书馆借书吧!
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式