服务端与客户端的传参问题
展开全部
session
session作用域比较容易理解,同一浏览器访问多次,在这多次访问之间传递信息,就是session作用域。
session是通过HttpSession接口实现的。
Object HttpSession.getAttribute(String name)
从session中获取信息
void HttpSession.setAttribute(String name, Object value)
向session中保存信息
而通过HttpServletRequest.getSession()方法可以获得HttpSession对象。
HttpSession HttpServletRequest.getSessio()
获取当前请求所在的session的对象。
session的开始容易判断(浏览器发出第一个HTTP请求即可认为会话开始),但结束就不好判断了(因为浏览器关闭时不会通知服务器“我关了,会话可以结束了”),所以只能通过这种方法判断:如果一定的时间内客户端没有反应,则认为会话结束。 Tomcat的默认值为120分钟,但这个值也可以通过 HttpSession 的 setMaxInactiveInterval 方法来设置。
void setMaxInactiveInterval(int interval)
设置绘画的超时值。
如果想主动让会话结束,如用户单击“注销”的时候,可以使用 HttpSession 的 invalidate 方法:
vooid invalidate()
强制结束当前session。
当然服务器上可能有很多的session,怎么区分呢,就是用sessionID,这只是一个ID判别session的身份,判断出这个身份之后,相对应的session里面就会有很多信息,就是前面提到的setAttribute()放进去的了(当然有可能包括你的用户名和密码对象了,这就取决于你在服务器端是否放到session里面了)
session作用域比较容易理解,同一浏览器访问多次,在这多次访问之间传递信息,就是session作用域。
session是通过HttpSession接口实现的。
Object HttpSession.getAttribute(String name)
从session中获取信息
void HttpSession.setAttribute(String name, Object value)
向session中保存信息
而通过HttpServletRequest.getSession()方法可以获得HttpSession对象。
HttpSession HttpServletRequest.getSessio()
获取当前请求所在的session的对象。
session的开始容易判断(浏览器发出第一个HTTP请求即可认为会话开始),但结束就不好判断了(因为浏览器关闭时不会通知服务器“我关了,会话可以结束了”),所以只能通过这种方法判断:如果一定的时间内客户端没有反应,则认为会话结束。 Tomcat的默认值为120分钟,但这个值也可以通过 HttpSession 的 setMaxInactiveInterval 方法来设置。
void setMaxInactiveInterval(int interval)
设置绘画的超时值。
如果想主动让会话结束,如用户单击“注销”的时候,可以使用 HttpSession 的 invalidate 方法:
vooid invalidate()
强制结束当前session。
当然服务器上可能有很多的session,怎么区分呢,就是用sessionID,这只是一个ID判别session的身份,判断出这个身份之后,相对应的session里面就会有很多信息,就是前面提到的setAttribute()放进去的了(当然有可能包括你的用户名和密码对象了,这就取决于你在服务器端是否放到session里面了)
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询