jsp销毁session(销毁session的函数是)

http://www.itjxue.com  2023-02-23 14:03  来源:未知  点击次数: 

jsp中的session怎么销毁?

嗨,伤心了,Session的创建和销毁不是说过吗?当客户端发出第一个请求时(不管是被访问网站的任何页面)就会在此站点的服务其中开辟一块内存空间,这块内存就是session,session的销毁有两种方式,一种是session过期时间已到,会自动销毁(注意这里不是马上就会销毁,具体销毁时间由Tomcat容器所决定)。在我们项目中的web.xml中就可以配置:

session-config

session-timeout30/session-timeout

/session-config

表示设置session过期时间为30分钟。值得注意的就是上面说的即使30分钟到了session不一定会马上销毁,可以通过session监听器测试得到每次session销毁的时间都不一样。如果要想安全的话就用下面第二种方法。在Tomcat的conf文件夹中的web.xml中可以找到Tomcat默认的session过期时间为30分钟。如果我们在我们的站点中配置了session过期时间Tomcat容器会以站点配置为主,如果我们没有在站点中配置session过期时间,将会以Tomcat下conf文件夹下的web.xml文件中配置的session过期时间为准。

第二种销毁方式通过手工方式销毁,这种销毁方式会立刻释放服务器端session的资源,我们手动销毁可以通过session().invalidate();实现。

JSP中怎样关闭登陆用户的session

JSP中可以通过session的invalidate()方法销毁session。

具体用法是在满足条件的语句下写:

sesssion.invalidate();

解释说明:

session.invalidate()是销毁跟用户关联session,例如有的用户强制关闭浏览器,而跟踪用户的信息的session还存在,可是用户已经离开了。

虽然session

生命周期浏览默认时间30分,但是在30分钟内别的用户还可以访问到前一个用户的页面,需销毁用户的session。

jsp注销session问题

因为session.invalidate()方法是java的代码,是在生成你的静态页面之前就执行了的,因此不会等待用户点页面的超连接时再执行。

如果要完成这种功能,可以点连接跳转到一个单独的页面,在这个页面里加入这句代码就行了。

注意用% session.invalidate(); %

求教,jsp中session对象使用完之后需要手动销毁吗?

不需要手动销毁,他会自动销毁的,但你关闭浏览器并不会因为会话结束而销毁session,每个session都有一个自己的id,你关闭浏览器只是丢失了这个id与你浏览器的连接,不信你可以自己创建session之后把tomcat或者jboss关闭看看,session文件还是可以找到的。

jsp关闭浏览器时,如何清空session

jsp关闭浏览器时,清空session的方式如下:

function window.onUnload()

{

var newWindow;

if((window.screenLeft=10000 window.screenTop=10000)||event.altKey)

{ newWindow=window.open('destorys.jsp','网页名称','width=0,height=0,top=4000,left=4000');//新窗口将在视区之外打开 newWindow.opener=null; sleep(5000); newWindow.close();//新窗口关闭 }

}

function sleep(milisecond)

{ var currentDate,beginDate=new Date(); var beginHour,beginMinute,beginSecond,beginMs; var hourGaps,minuteGaps,secondGaps,msGaps,gaps; beginHour=beginDate.getHours(); beginMinute=beginDate.getMinutes(); beginSecond=beginDate.getSeconds(); beginMs=beginDate.getMilliseconds(); do { currentDate=new Date(); hourGaps=currentDate.getHours() - beginHour; minuteGaps=currentDate.getMinutes() - beginMinute; secondGaps=currentDate.getSeconds() - beginSecond; msGaps=currentDate.getMilliseconds() - beginMs; if(hourGaps0) hourGaps+=24; //考虑进时进分进秒的特殊情况 gaps=hourGaps*3600+ minuteGaps*60+ secondGaps; gaps=gaps*1000+msGaps; }while(gapsmilisecond); }

其中红色部分为你指向清除session的JSp页面。

如下:

%@ page contentType="text/html; charset=GBK" % %@ page language="java" import="java.lang.*"% jsp:useBean id="login" scope="page" class="com.util.Login"/ % session.removeAttribute("username"); session.removeAttribute("userid"); session.removeAttribute("power"); session.removeAttribute("flag"); %

这样,在每个后台页面引用一个这个JS,就可以实现了。

(责任编辑:IT教学网)

更多

推荐金山WPS文章