一文了解Session,面试大厂应该注意哪些问题

简介: 一文了解Session,面试大厂应该注意哪些问题

正文

package com;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.http.HttpSession;
import java.io.IOException;
public class SessionServlet extends HttpServlet {
@Override
protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
//存储到session中
//1、获取session对象
HttpSession session=req.getSession();
//存储数据
session.setAttribute(“username”,“root”);
}
}
public class SessionServlet1 extends HttpServlet {
@Override
protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
//获取数据。从session中
//1获取session对象
HttpSession session=req.getSession();
//获取数据
Object username=session.getAttribute(“username”);
System.out.println(“获取到的session值为”+username);
}
web.xml配置两个类的访问地址
SessionServlet1
com.SessionServlet1
SessionServlet1
/sessionServlet1
SessionServlet
com.SessionServlet
SessionServlet
/sessionServlet

先访问①后访问②运行得

Session原理

==========

Session是基于Cookie实现的

获取的对象有唯一的标识id的,tomcat把session的id当成cookie发送给浏览器,tomcat在响应是会加上set-cookie这个响应头JSESSIONID=值存储到浏览器内存中,第二次获取时就会去内存中寻找有无id为之前的,有就直接用那数据,没有就创建

Session使用细节


Session钝化、活化

服务器重启,Session中的数据还会存在?

钝化:在服务器正常关闭后,Tomcat会自动将Session数据写入硬盘文件中

活化:在次启动服务器后,从文件中加载数据到Session中

Session销毁:

①默认情况下,无操作30分钟后自动销毁(下列单位分钟)

30

前端框架

前端框架太多了,真的学不动了,别慌,其实对于前端的三大马车,Angular、React、Vue 只要把其中一种框架学明白,底层原理实现,其他两个学起来不会很吃力,这也取决于你以后就职的公司要求你会哪一个框架了,当然,会的越多越好,但是往往每个人的时间是有限的,对于自学的学生,或者即将面试找工作的人,当然要选择一门框架深挖原理。

以 Vue 为例,我整理了如下的面试题。


目录
打赏
0
0
0
0
80
分享
相关文章
大厂面试必备:如何轻松实现分布式Session管理?
这篇文章介绍三种分布式Session的实现方案:基于JWT的Token、基于Tomcat的Redis和基于Spring的Redis。JWT方案通过生成Token存储用户信息,实现无状态、可扩展的会话管理,但可能增加请求负载且数据安全性较低。Tomcat与Redis结合,通过配置Tomcat和Redis,实现Session集中管理和高性能存储,但配置相对复杂。Spring整合Redis适用于SpringBoot和SpringCloud项目,集成方便,扩展性强,但同样依赖外部Redis服务。每种方法有其优缺点,适用场景不同。作者小米是一个技术爱好者,欢迎关注其微信公众号“软件求生”获取更多技术内容
352 4
计算机网络常见面试题(二):浏览器中输入URL返回页面过程、HTTP协议特点,GET、POST的区别,Cookie与Session
计算机网络常见面试题(二):浏览器中输入URL返回页面过程、HTTP协议特点、状态码、报文格式,GET、POST的区别,DNS的解析过程、数字证书、Cookie与Session,对称加密和非对称加密
一天五道Java面试题----第十一天(分布式架构下,Session共享有什么方案--------->分布式事务解决方案)
这篇文章是关于Java面试中的分布式架构问题的笔记,包括分布式架构下的Session共享方案、RPC和RMI的理解、分布式ID生成方案、分布式锁解决方案以及分布式事务解决方案。
一天五道Java面试题----第十一天(分布式架构下,Session共享有什么方案--------->分布式事务解决方案)
|
10月前
|
面试官:Session和JWT有什么区别?
JSON Web Token (JWT) 是一种开放标准,用于安全地在网络上传输信息。JWT 包含头部、载荷和签名三部分,常用于身份验证和授权。与Session相比,JWT有以下优势:无服务器存储状态,支持跨域,适应微服务架构,自包含且可扩展。在Java开发中,可以使用HuTool框架操作JWT,包括生成、验证和解析Token。JWT通过在客户端存储令牌实现无状态认证,与Session的主要区别在于工作原理、存储方式和有效期管理。
149 6
面试题:什么是cookie和session?
面试题:什么是cookie和session?
51 0
面试官:禁用Cookie后Session还能用吗?
面试官:禁用Cookie后Session还能用吗?
127 0
京东面试:说说Cookie、Session和Token的区别?
京东面试:说说Cookie、Session和Token的区别?
129 0
经典面试题:理解Cookie和Session之间的区别-2
经典面试题:理解Cookie和Session之间的区别
75 0
面试官:单核 CPU 支持 Java 多线程吗?为什么?被问懵了!
本文介绍了多线程环境下的几个关键概念,包括时间片、超线程、上下文切换及其影响因素,以及线程调度的两种方式——抢占式调度和协同式调度。文章还讨论了减少上下文切换次数以提高多线程程序效率的方法,如无锁并发编程、使用CAS算法等,并提出了合理的线程数量配置策略,以平衡CPU利用率和线程切换开销。
面试官:单核 CPU 支持 Java 多线程吗?为什么?被问懵了!

热门文章

最新文章

AI助理

你好,我是AI助理

可以解答问题、推荐解决方案等