|
![]() |
名片设计 CorelDRAW Illustrator AuotoCAD Painter 其他软件 Photoshop Fireworks Flash |
|
前一段时间有好几个问题,提到怎么判定session是否过期。 接触jspo已经很久了,但是还真没有想过这个问题,当时也就没有找到一个满足的答案给人家。 当时,我提到一个方式,就是实现HttpSessionListener接口,然后在sessionDestroyed()方式中执行一些操作,表示 session要过期了,因为这个方式是session.invalidate()之前监听器调用的方式。这个判定的方式显然不能让人满足。 我当时问了些人,但是也没有得到一个正确的答案。 正好偶尔间看到,request.getSeesion(boolean)方式,一下子让我恍然大悟。这个方式里面传了一个boolean值,这个值假如是 true,那么假如当前的request的session不可用,那么就创建新的会话,假如存在就返回当前的会话。假如参数是false,那么在 request的当前会话不存在的时候就返回null。 这样我们就可以很轻易的联想到这个所谓的request的当前会话是否存在和session过期的联系,所以我们就可以“近似地”认为session不存在就是session过期了,那么我们就可以很轻易地判定session是否过期了。方式如下: if(request.getSession(false)==null) System.out.println("Session has been invalidated!"); else System.out.println("Session is active!"); 可能大家注重到我上面有一个“近似地”字眼,也就是说存在特殊情况。 这个特别情况就是第一次哀求还没有创建会话的时候,那么用这个方式返回的仍旧是null,原因我想大家应该是显然的。 返回类别: 教程 上一教程: 制作我们自己的EBAY(拍卖系统)(9) 下一教程: ASP中实现文件上传方式的研究 您可以阅读与"一个判定SESSION是否过期的小技巧"相关的教程: · 关于执行IIS与设计ASP程序的小技巧 · 一个提供用户输入时期的绝好程序之(二) · 怎样判定一个盘上是否有文件 · 如何定义一个SESSION数组 · 判定一个ACCESS数据库中某个表是否存在的方式 |
![]() ![]() |
快精灵印艺坊 版权所有 |
首页![]() ![]() ![]() ![]() ![]() ![]() ![]() |