1.cookie与session的区别
cookie数据存放在客户的浏览器上,session数据放在服务器上
cookie不是很安全,别人可以分析存放在本地的COOKIE并进行COOKIE欺骗,考虑到安全应当使用session
session会在一定时间内保存在服务器上。当访问增多,会比较占用你服务器的性能,考虑到减轻服务器性能方面,应当使用COOKIE
2.session的原理?
session的原理:在服务器第一次调用request.getSession()方法的时候,会在内存中创建一个session对象,此对象具有一个独一无二的id值,此id值将会以cookie(JSESSIONID)的形式发送给浏览器,浏览器以后每次访问都会带着此cookie,服务器就利用此cookie区分浏览器找到对应的session空间。
3.cookie禁用怎么办?
4.两个session怎么快速实现数据传输?
5.JSESSIONID是什么?
JSESSIONID就是用来判断当前客户端对应于哪个session,换句话说服务器识别客户端的方法是通过JSESSIONID来告诉服务器该客户端的session在内存的什么地方。
事实上jsessionid==request.getSession().getId()
6.session为什么会失效呢?失效了怎么办?
首先简单说一下session,它就是客户端和服务器端建立的一次会话。
打开浏览器输入地址栏向服务器发送请求的时候,session创建成功(关闭浏览器或者会话到期了,或者人为的销毁session【session.invalidate()】, 会话结束),这时服务器会向每一个客户端保存一个jessionid,后面客户端每次向服务器端发送请求都会将jsessionid传给服务器,服务器获取该值后确定到底是哪个客户端。
补充:jessionid传递给客户端的方法有两种,一是URL重写机制,二是使用cookie传递。
如果cookie禁用了,而且没有重写URL,那么就会出现session失效的问题,由此可见此时解决session失效的办法就是重写URL了。
路过记得点赞🙃🙃