当前位置: 首页 > news >正文

测试开发之面试宝典

目录

session和cookie的区别


session和cookie的区别

1.session和cookie都是鍵值对应的


2.session和cookie都是服务器生成的,session的ID,即服各器用来识别读取session对象的一把钥匙


3.session是保存在服各器端,而cookie是返回給客戶端的, 服务器生成session对象后,将sessionID以cookie键值的形式返回给客户端, 而cookie是通过header的Set-Cookie返回给客户端,并存储在浏览器默认的文件目录下


4.session和cookie都是有其生命周期的

  •     cookie的生命周期

        1.cookie本身的存活周期,由服务器生成cookie时指定(浏览器在发送请求时,会自动将存活的cookie装在请求头中向服务器发送,JMeter这类工具通过HTTP Cookie管理器实现)
        2.客户端是否保存cookie,若默认目录下的cookie文件被清理,则cookie消亡

  •     session的生命周期

        1.服务器对于session对象的存活周期的设定
        2.客户端连接是否关闭


5.为什么Session比Cookie安全?因为Cookie是返回给客户端,用户可见,可以被伪造(类似人民币);Session是存在服务端,只有sessionID暴露(类似银行卡)
一般而言,cookie被破解影响到的是整个系统中的所有用户,而session则不存在被破解的风险,只影响个人


6.状态维持的原理:无论session、cookie、token或者通过表单数据来实现的状态位置,从代码的角度来说,我们要做的事情是一样的。

  •     服务器什么时候以何种方式返回状态
  •     客户端在发送请求的时候,是如何使用状态值

Spring基础(51CTO课程)

spring应用开发包:
aopaliance-1.0.jar
apspectjweaver-1.9.5.jar
common-logging-1.2.jar
spring-aop-5.2.3.RELEASE.jar
spring-aspects-5.2.3.RELEASE.jar
spring-beans-5.2.3.RELEASE.jar
spring-context-5.2.3.RELEASE.jar
spring-context-support-5.2.3.RELEASE.jar
spring-core-5.2.3.RELEASE.jar
spring-expression-5.2.3.RELEASE.jar
spring-instrument-5.2.3.RELEASE.jar
spring-jdbc-5.2.3.RELEASE.jar
spring-jms-5.2.3.RELEASE.jar
spring-messaging-5.2.3.RELEASE.jar
spring-orm-5.2.3.RELEASE.jar
spring-oxm-5.2.3.RELEASE.jar
spring-test-5.2.3.RELEASE.jar
spring-tx-5.2.3.RELEASE.jar

IDEA上创建spring工程,并选择好project JDK:
1.创建lib目录,复制以上文件到该目录
2.从File->Project Structure进入Project Settings窗口,Libraries tab中可以选择依赖包导入,使以上jar包成为工程的依赖
3.右键点击src目录,New->XML Configuration File->Spring Config,命名为applicationContext.xml
4.包目录下可以创建子配置文件,此时applicationContext.xml可以通过以下引入子配置文件


IoC控制反转:对象的创建、销毁和初始化等与生命周期相关的操作交给Spring容器来处理,降低代码耦合度。
1.将类放在applicationContext.xml中声明,赋予一个beanId

2.调用时构建ApplicationContext对象,把类构造出来,并通过getBean方法得到实例化的对象
ApplicationContext applicationContext = new ClassPathXmlApplicationContext("applicationContext.xml");
Daoshi daoshi = (Daoshi) applicationContext.getBean("daoshi");

scope属性:
1.默认单例模式,scope="singleton"(每次getBean得到的是相同的对象实例)
2.设置多例模式, scope="prototype"(每次getBean得到的是不同的对象实例)

init-method属性和destroy-method属性:
1.配置文件中需要添加这两个属性
init-method="init"
destroy-method="destroy"
2.class中需要定义init方法和destroy方法
3.调用getBean时,创建对象会自动触发init方法
3.调用时关闭容器后,会自动触发destroy方法(多例模式下,不会执行销毁方法)
((ClassPathXmlApplicationContext)applicationContext).close();

lazy-init属性:
1.默认懒加载,lazy-init=true,在真正需要使用对象的时候才会创建对象
2.非懒加载,lazy-init=false,在容器启动后立即加载对象

 

http://www.lryc.cn/news/520618.html

相关文章:

  • 399. 除法求值【 力扣(LeetCode) 】
  • 算法日记1:洛谷p2678跳石头(二分答案)
  • Unity shader中真的可以动态关闭Stencil Test吗?
  • YOLOv9改进,YOLOv9自研检测头融合HyCTAS的Self_Attention自注意力机制,2024,适合目标检测、分割任务
  • 计算机网络 (36)TCP可靠传输的实现
  • Git版本控制 - 创建使用Repository
  • MySQL —— 在CentOS9下安装MySQL
  • LeetCode 热题 100_腐烂的橘子(52_994_中等_C++)(图;广度优先遍历(队列))
  • Nginx 可观测性最佳实践
  • LabVIEW光流跟踪算法
  • Jira用例自动去除summary重复用例
  • 基于openEuler22.03SP4部署Prometheus+Grafana
  • 泛目录和泛站有什么差别
  • css 布局及动画应用(flex+transform+transition+animation)
  • springboot vue uniapp 仿小红书 1:1 还原 (含源码演示)
  • lombok在高版本idea中注解不生效的解决
  • 跨境电商领域云手机之选:亚矩阵云手机的卓越优势
  • Linux第二课:LinuxC高级 学习记录day02
  • 6. NLP自然语言处理(Natural Language Processing)
  • win10电脑 定时关机
  • linux删除用户
  • FPGA的 基本结构(Xilinx 公司Virtex-II 系列FPGA )
  • Springboot项目如何消费Kafka数据
  • LeetCode 热题 100 | 子串
  • 深度学习笔记11-优化器对比实验(Tensorflow)
  • 【掌握 JavaScript 数组迭代:map 和 includes 的使用技巧】
  • 深入浅出 Android AES 加密解密:从理论到实战
  • Clickhouse基础(一)
  • 深度学习|表示学习|一个神经元可以干什么|02
  • ubuntu22.04降级安装CUDA11.3