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

计算机基础知识复习8.13

cookie和session区别

cookie:是服务器发送到浏览器,并保存在浏览器端的一小块数据

浏览器下次访问服务时,会自动携带该块数据,将其发送给服务器

session:是javaEE标准,用于在服务端记录客户端信息

数据存放在服务端更加安全,但是会增加服务端的内存压力

Spring IOC含义

springIOC容器像一个工厂一样,当我们需要创建一个对象的时候,只需要配置好配置文件/注解即可,完全不用考虑对象是如何被创建出来的。IOC容器负责创建对象,将对象连接在一起,配置这些对象并从创建中处理这些对象的整个生命周期,直到他们被完全销毁。

Spring涉及的设计模式

工厂模式:spring使用工厂模式通过beanFactory,ApplicationContext创建bean对象

代理模式:springAOP功能的实现

单例设计模式:spring中的bean默认都是单例的

模版方法模式:spring中jdbcTemplate以Template结尾的对数据库操作的类,他们都使用到了模版模式

装饰器模式:项目需要连接多个数据库,而且不同客户在每次访问中根据需要会去访问不同的数据库,装饰器模式让我们可以根据客户的需求动态切换不同的数据源

观察者模式:spring事件驱动模型

适配器模式:springAOP的增强或通知使用到了适配器模式

静态内部类

静态内部类与非静态内部类之间存在一个最大的区别,我们知道非静态内部类在编译完成之后会隐含地保存着一个引用,该引用是指向创建他的外围类,但是静态内部类却没有,这意味着:

他的创建不需要依赖外围类的创建,

他不能使用任何外围类的非static成员变量或方法

CMS收集器

CMS收集器是一种以获取最短回收停顿时间为目标的收集器,这是HotSpot虚拟机第一款真正意义上的并发收集器,他第一次实现了让垃圾收集线程和用户线程同时工作。

初始标记:暂停所有的其他线程,并记录下直接与root相连的对象,速度很快

并发标记:同时开启GC和用户线程,用一个闭包结构去记录可达对象。但在这个阶段结束,这个闭包结构并不能保证包含当前所有的可达对象。因为用户线程可能会不断的更新引用域。所以gc线程无法保证可达性分析的实时性,所以这个算法会跟踪记录这些发生引用更新的地方

重新标记:重新标记阶段就是为了修正并发标记期间因为用户程序继续运行而导致标记产生变动的那一部分对象的标记记录,这个阶段的停顿时间一般会比初始标记阶段的时间稍长,远远比并发标记阶段时间短。

并发标记:开启用户线程,同时GC线程开始对未标记的区域做清扫

java函数参数是值拷贝还是引用拷贝

形参为基本类型数据都是值传递(只是在拷贝他的值)

形参是引用数据类型的都是引用传递(只是对对象的引用,实际上指的是同一个对象)

Hash表如何解决hash冲突

线性探测法:当我们的所需要存放值的位置被占了,我们就往后面一直加1并取模直到存在一个空余的地址供我们存放值

链地址法:将所有哈希地址相同的记录都链接在同一链表中

再哈希法:同时构造多个不同的哈希函数,等发生哈希冲突时用其他哈希函数计算地址,直到不发生冲突为止

相关文章:

  • 北京网站建设多少钱?
  • 辽宁网页制作哪家好_网站建设
  • 高端品牌网站建设_汉中网站制作
  • 基于 HTTP构建 YUM网络源
  • 使用ITextRenderer导出PDF后无法打开问题,提示‘无法打开此文件‘
  • JVM性能监控工具
  • 实现异形(拱形)轮播图
  • 高性能内存对象缓存
  • 数据中心存储市场迎强劲反弹
  • 网络如何发送一个数据包
  • Ubuntu安装cuda
  • 【Qt开发】创建并打开子窗口(QWidget)的注意事项 禁止其他窗口点击、隐藏窗口、子窗口不退出的配置和解决方案
  • TypeScript 快速上⼿ (2)
  • SiLM5932SHO系列SiLM5932SHOCG-DG 12A/12A强劲驱动电流能力 支持主动短路保护功能(ASC)单通道隔离门极驱动器
  • 电子电气架构---主流主机厂电子电气架构华山论剑(上)
  • 类和对象(3)
  • 论文阅读:Real-time Controllable Denoising for Image and Video
  • Kafka集群搭建的两种方式
  • 【翻译】babel对TC39装饰器草案的实现
  • AHK 中 = 和 == 等比较运算符的用法
  • Angular 4.x 动态创建组件
  • C++类中的特殊成员函数
  • ECS应用管理最佳实践
  • Koa2 之文件上传下载
  • leetcode388. Longest Absolute File Path
  • puppeteer stop redirect 的正确姿势及 net::ERR_FAILED 的解决
  • Shell编程
  • SpiderData 2019年2月16日 DApp数据排行榜
  • 前端攻城师
  • 前端临床手札——文件上传
  • 前端面试之闭包
  • 前端性能优化--懒加载和预加载
  • 一道闭包题引发的思考
  • 终端用户监控:真实用户监控还是模拟监控?
  • Salesforce和SAP Netweaver里数据库表的元数据设计
  • 哈罗单车融资几十亿元,蚂蚁金服与春华资本加持 ...
  • 支付宝花15年解决的这个问题,顶得上做出十个支付宝 ...
  • ​浅谈 Linux 中的 core dump 分析方法
  • ​水经微图Web1.5.0版即将上线
  • # 计算机视觉入门
  • ###51单片机学习(1)-----单片机烧录软件的使用,以及如何建立一个工程项目
  • #微信小程序(布局、渲染层基础知识)
  • (32位汇编 五)mov/add/sub/and/or/xor/not
  • (solr系列:一)使用tomcat部署solr服务
  • (笔记)Kotlin——Android封装ViewBinding之二 优化
  • (二)pulsar安装在独立的docker中,python测试
  • (附源码)springboot美食分享系统 毕业设计 612231
  • (七)Appdesigner-初步入门及常用组件的使用方法说明
  • (转)淘淘商城系列——使用Spring来管理Redis单机版和集群版
  • (总结)Linux下的暴力密码在线破解工具Hydra详解
  • .bat批处理(七):PC端从手机内复制文件到本地
  • .NET CF命令行调试器MDbg入门(三) 进程控制
  • .net core webapi 部署iis_一键部署VS插件:让.NET开发者更幸福
  • .NET Framework 的 bug?try-catch-when 中如果 when 语句抛出异常,程序将彻底崩溃
  • .NET MVC 验证码
  • .NET 自定义中间件 判断是否存在 AllowAnonymousAttribute 特性 来判断是否需要身份验证
  • .vollhavhelp-V-XXXXXXXX勒索病毒的最新威胁:如何恢复您的数据?
  • /var/lib/dpkg/lock 锁定问题