【发布时间】:2013-09-06 05:44:36
【问题描述】:
我是编程新手
我在网上搜索了很多,但没有人能满足我的要求。这里我想在用户关闭浏览器窗口时从数据库中删除数据。
在这里我找到了堆栈溢出的一种解决方案
public class YourHttpSessionListener implements HttpSessionListener {
public void sessionCreated(HttpSessionEvent event) {
//put row in the database
}
public void sessionDestroyed(HttpSessionEvent event) {
//delete the row from database
System.out.println("entered in to listener class");
}
}
我在 web.xml 中添加这些行
<listener>
<listener-class>YourHttpSessionListener</listener-class>
</listener>
这里我不使用任何 ajax 调用或其他方法。但是这里关闭浏览器时不调用 sessionDestroyed()。这里我没有创建任何会话。
【问题讨论】:
-
没有可靠的方法来检测您的用户是否关闭了浏览器窗口。您不能依赖 Javascript 事件,因为 javascript 可能未启用。你必须找到另一种方法来做你想做的任何事情。
-
是否可以使用任何 javascript 或 ajax 函数
-
再次阅读我的评论。
标签: servlets httpsession