当前位置:编程学习 > JAVA >>

急!!!关闭网页时怎样让session失效?

<%@ page language="java" contentType="text/html; charset=utf-8"
    pageEncoding="utf-8"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>新闻信息管理系统</title>
<!-- 让超链接后的页面在显示页面的右下部分显示 -->
<!--<base target="rightFrame"/>-->
<link type="text/css" rel="stylesheet" href="../../css/common.css"/>
<script type="text/javascript">
  function close(){
     window.location="<%=request.getContextPath() %>/jsp/listener/doOut.jsp";   
  }
</script>
</head>

<body onunload="close();">
<!--页面顶部-->
<jsp:include page="/jsp/listener/online.jsp"></jsp:include>
<jsp:include page="adminTop.jsp"></jsp:include>
<!--页面中部-->
<div id="content" class="main-content clearfix">
<jsp:include page="adminSidebar.jsp"></jsp:include>
<jsp:include page="adminRightbar.jsp"></jsp:include>
</div>
<!--页面底部-->
<jsp:include page="adminBottom.jsp"></jsp:include>
</body>
</html>


doOut.jsp页面如下 :

<%@page language="java" contentType="text/html; utf-8" pageEncoding="utf-8"%>

<%
   session.invalidate();//使session失效,同时执行User类中的valueUnbound()方法
   response.sendRedirect("login.jsp");
 %>


--------------------编程问答-------------------- 上面的代码怎么实现不了呢? --------------------编程问答-------------------- request.getSession().invalidate(); --------------------编程问答-------------------- 这个会话对象已经在servlet中创建了,所以不用再这样写了(request.getSession().invalidate();)
通过超链的方式是可以关闭会话的,我问的是怎么让它关闭jsp页面的时候关才会话? --------------------编程问答-------------------- 在jsp中session是内置的对象,不用再创建 --------------------编程问答-------------------- session.invalidate() --------------------编程问答-------------------- 页面关闭时   调用session.abandon() 
或是当全部打开的IE窗口关闭时     

session会自动失效  --------------------编程问答--------------------
楼主这个问题是否已经解决了呢?我最近也遇到了类似的需求,我找到了另一种思路来实现这个功能不过这个方法也是不尽人意啊 实现不了跳转总与逻辑相驳。我贴出我的代码(也是在网上搜的)

window.onload = function(){
var is_asked = false;
 
window.onbeforeunload = function (ev) {
    var e = ev || window.event;
    windowFocus();
    if (!is_asked){
      is_asked = true;
      var showstr = "CUSTOM_MESSAGE";
      if (e) {  //for ie and firefox
        e.returnValue = showstr;
      }
      return showstr; //for safari and chrome
    }
  };
 
var windowFocus = function (ev){
alert(ev||is_asked);
    if (is_asked){
      window.location.href = "http://www.google.com";
    }
};
};

补充:Java ,  Java EE
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,