我是靠谱客的博主 包容纸鹤,最近开发中收集的这篇文章主要介绍JavaWeb之session&Cookie前言一、session二、Cookie总结,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

前言

大家好,这里是九歌的博客,上次九歌分享了 模糊查询等,今天来分享session和Cookie。天天呆在宿舍当然要卷起来啦,不开心就学习。


提示:以下是本篇文章正文内容,下面案例可供参考

一、session

1.session是什么?

session在网络中被称为会话。
由于HTTP协议(超文本传输协议)是一种无状态协议,也就是当一个客户向服务器发出请求,服务器接收请求,并返回响应后,该连接就结束了,而服务器并不保存相关的信息。
为了弥补这一缺点,HTTP协议提供了session
通过session可以在应用程序的WEB页面间进行跳转时,保存用户的状态,使整个用户会话一直存在下去,直到关闭浏览器。
但是,如果在一个会话中,客户端长时间不向服务端发出请求,session对象就会自动消失。这个时间取决于服务器,例如,Tomcat服务器默认为30分钟。不过这个时间可以通过编写程序进行修改。

实际上,一次会话的过程也可以理解为一个打电话的过程。通话从拿起电话或手机拨号开始,一直到挂断电话结束,在这个过程中,可以与对方聊很多话题,甚至重复的话题。一个会话也是这样,可以重复访问相同的Web页。。

2.运行机制

当一个session开始时,Servlet容器将创建一个Httpsession对象,在Httpsession对象中可以存放客户状态的信息(例如购物车)。
Servlet容器为Httpsession分配一个唯一标识符,称为session ID。 Servlet容器把session
ID作为Cookie保存在客户的浏览器中。
每次客户发出HTTP请求时,Servlet容器可以从HttpServletRequest对象中读取session
ID,然后根据session ID找到相应的Httpsession对象,从而获取客户的状态信息。

3.session对象的生命周期

session对象的生命周期:创建---->使用----->消亡

(1)创建

   //当客户端浏览器第一次访问服务器时,服务器为这个浏览器创建一个Session对象。
   //在服务器端使用request.getSession()或request.getSession(true)方法来获得Session对象。
   request.getSession()	//获得Session对象
   session.getId()		//获得session对象的ID

(2)使用

	//创建Session对象后,使用Session对象进行数据的存取和传输。
	session.setAttribute(String name, Object obj)	//将信息保存在session范围内
	session.getAttribute(String name)		//获取保存在session范围内的信息
	session.getAttributeNames(); 	//返回Session对象中存储的每一个属性对象,枚举型
    session.isNew();			//判断session对象是不是新的

	//具体过程:
	//a. 将产生的sessionID存入到Cookie中;
	//b. 当客户端再次发送请求时,会将se

最后

以上就是包容纸鹤为你收集整理的JavaWeb之session&Cookie前言一、session二、Cookie总结的全部内容,希望文章能够帮你解决JavaWeb之session&Cookie前言一、session二、Cookie总结所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(48)

评论列表共有 0 条评论

立即
投稿
返回
顶部