会话(session)是客户与服务器之间的不间断的请求-响应序列
当客户向服务器发送第一个请求时就开始一个会话。
对该客户之后的每个请求,服务器能够识别出请求来自于同一个客户。
当客户明确结束会话或服务器在一个预定义的时限内没从客户接收任何请求时,会话就结束了。
当会话结束后,服务器就忘记了客户以及客户的请求。
-
1)创建或返回与客户请求关联的会话对象。
-
2)在会话对象中添加或删除“名/值”对属性。
-
3)如果需要可使会话失效。
-
使用request对象的getSession()方法。
HttpSession getSession(boolean create)
没有会话时,true创建新会话,false 返回null
HttpSession getSession()
与getSession(true) 等价
- Session的使用
设置属性、提取属性、设置过期
void setAttribute (String name, Object value)
Object getAttribute(String name)
void invalidate()
=====================================================================================
- 1、保存位置
session保存在服务器,客户端不知道其中的信息;
cookie保存在客户端,服务器能够知道其中的信息。
判断
回到题目,如果你真想检验一个人的水平。第一步先考察一下基本的编程基础,问几个基本的编程问题,可以和前端相关也可以无关。比如垃圾收集大致是怎么做的,setTimeout 大致做了什么(说会在另一个线程里执行回调的直接毙掉)。
第二步考察一下知识面,问问http、tcp的基本知识,dns是怎么工作的,或者常用框架的实现原理,看看候选人是不是除了自己的一亩三分地什么都不关心。
第三步考察hold业务逻辑的能力,从一个简单的注册页,或者查询页开始,先让说下代码的基本架构,然后需求、性能、可靠性、安全层层加码,看看能不能很快的反馈出解决方案。能对答如流的要么做过,要么对他来说这种复杂度的东西是小case。
前三步都没问题,基本上说明候选人已经还行了,但是行到什么程度,不知道。如果想找比较厉害的,就增加个第四步,亮点项目考察。
总的来说,面试官要是考察思路就会从你实际做过的项目入手,考察你实际编码能力,就会让你在电脑敲代码,看你用什么编辑器、插件、编码习惯等。所以我们在回答面试官问题时,有一个清晰的逻辑思路,清楚知道自己在和面试官说项目说技术时的话就好了,我整理一套前端面试题分享给大家,希望对即将去面试的小伙伴们有帮助!
们有帮助!**
[外链图片转存中…(img-Vcx8zYwt-1718725530153)]
[外链图片转存中…(img-aNUpcBj0-1718725530155)]