开发者社区> 问答> 正文

web开发中servlet内置对象创建与销毁? 400 报错

web开发中servlet内置对象创建与销毁? 400 报错

request对象是浏览器发送请求时创建的,
request的生命周期是一次请求/响应,
session跟request对象是什么关系,
为什么通过request对象可以取得session对象?明明是session对象的生命周期更长

展开
收起
爱吃鱼的程序员 2020-06-02 13:49:16 487 0
1 条回答
写回答
取消 提交回答
  • https://developer.aliyun.com/profile/5yerqm5bn5yqg?spm=a2c6h.12873639.0.0.6eae304abcjaIB

    因为在servlet体系中,request是基于session来创建的,你可以理解为servlet容器需要先找到session才能创建request,如果没有session则新建session,request持有session的引用。

    ######request里有 sessionid######其实也不应该这么问的,但是因为我自己不知道为什么通过request对象可以得到session对象,就这么问了.你说有sessionId,可能我接下来就得问为啥会有sessionId,request是如何获取到sessionid的,不懂的实在是太多了......######从代码中,是说在后台获取sessionid吗?######我怎么才能从代码中看到对应的sessionId呢?######HTTP是无状态的,只有req和resp,本身其实就没有session这个东西,是为了保持会话人为造出来的东西,也就不难看出session为啥要从request里面取出了######其实 session就是后台的一个 hashmap key就是 sessionid ,request请求过来 不一定都会创建 session , sessionid浏览器保存在 cookie中 每次http请求会上送, 而 request对象 可以理解为servlet根据这次请求构造出的对象 ,根据 sessionid关联到了 session
    2020-06-02 13:49:30
    赞同 展开评论 打赏
问答排行榜
最热
最新

相关电子书

更多
Web应用系统性能优化 立即下载
高性能Web架构之缓存体系 立即下载
PWA:移动Web的现在与未来 立即下载