Servlet之会话(Session)
Posted 厨房有只偷吃的猫
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Servlet之会话(Session)相关的知识,希望对你有一定的参考价值。
什么是会话?
会话:
Web应用中的会话 指的是一个客户端浏览器与Web服务器之间连续发生的一系列请求和响应的过程
会话状态:
Web服务器和浏览器在会话的过程中产生的状态信息
作用:
借助会话的状态,web服务器能够把同一个会话中的一系列的请求和响应过程关联起来,使得他们之间可以相互依赖和传递信息
创建会话:
HttpservletRequest 中建立会话:
HttpSession getSession()
是否之前有建立Session,如果没有,创建一个Session,如果有,使用当前SessionHttpSession getSession(boolean create)
是否之前有建立Session,如果有,使用当前Session
如果没有,看参数值:
true 创建一个新的session
false 不创建,返回null
HttpSession 常用方法
boolean isNew() // 判断该会话是否是一个新创建的Session
long getCreationTime() //获取该Session创建的时间 毫秒值 1/1/1970
java.lang.String getId() //Session的ID值,不重复
long getLastAccessedTime() // 获得最后一次访问此会话的时间 毫秒值 1/1/1970
int getMaxInactiveInterval() //获取会话超时的最大时间值 秒值
java.lang.Object getAttribute(java.lang.String name)
void setAttribute(java.lang.String name,java.lang.Object value)
如何实现有状态的会话
HTTP协议是一种无状态的协议:浏览器主动发出一个请求,web服务器被动的回应一个结果。不会保留客户的任何信息。
服务器接收到某个浏览器的访问请求,无法确定该浏览器之前所访问的请求信息。
使用会话ID(SessionID)来标识每次请求信息以实现由状态的会话
常用的会话跟踪技术:
1 通过Cookie在请求消息中进行传递会话ID
2 通过URL重写 使用请求URL把会话ID作为参数传给服务器
以上是关于Servlet之会话(Session)的主要内容,如果未能解决你的问题,请参考以下文章