面试八股文
文章平均质量分 79
芃仔
永远年轻,永远热泪盈眶
展开
-
【Spring中Bean的生命周期】
Spring何时创建对象?Spring工厂创建的同时创建对象。Spring工厂会在获取对象的同时创建对象。可不可以让scope=singleton的情况下也在获取对象的同时创建对象?原创 2023-06-14 14:18:17 · 823 阅读 · 0 评论 -
【Spring框架与MyBatis框架整合】
【代码】【Spring框架与MyBatis框架整合】原创 2022-10-10 00:37:10 · 144 阅读 · 0 评论 -
【Spring——AOP编程】
所谓代理设计模式,就是通过代理类,为原始类增加额外功能。原创 2022-10-08 19:30:39 · 800 阅读 · 0 评论 -
【Redis缓存】
相比于数据库而言,缓存的操作性能更高,缓存性能高的主要原因有以下几点:1、缓存一般都是key-value查询数据的,因为不像数据库一样还有查询的条件等因素,所以查询的性能一般会比数据库高;2、缓存的数据是存储在内存当中的,而数据库的数据是存储在磁盘当中的,因为内存的操作性能远远大于磁盘,因此缓存的查询效率会高很多;3、缓存更容易做分布式部署(当一台服务器变成多台相连的服务器集群),而数据库一般比较难实现分布式部署,因此缓存的负载和性能更容易平行扩展和增加。缓存大致分为两大类:本地缓存、分布式缓存本地缓存:也原创 2022-07-06 21:28:00 · 9246 阅读 · 0 评论 -
【Cookie和Session的基本使用说明】
在前面我们讲到了Cookie和Session具体是干什么用的,对于这样的机制有何作用呢?我们试着想想,当我们访问一个需要身份验证的页面时,是否需要对于该页面的每个分支页面都需要重新登录一次呢?显然,这样是很不科学的,因此,Cookie和Session机制就是为了应对这样的场景而产生的。好比于去医院看病挂号,这个挂号这个操作就会发给你一张就诊卡,这张就诊卡就是类似于Cookie这样的机制,当我们访问每个不同的科室(页面)的时候,只需要携带着这张就诊卡,就能够随意访问每个科室(页面),每个科室(页面)会先针对这原创 2022-06-27 20:54:36 · 501 阅读 · 0 评论 -
【关于Tomcat那些不得不知道的事儿】
Tomcat是一个HTTP服务器。我们也可以认为它是一个TCP/UDP服务器,因为HTTP协议我们也可以认为是基于TCP的。HTTP服务器就是在TCP服务器的基础上,加上了一些额外的功能:例如能够解析请求中的HTTP报文,把请求转换成结构化的数据(对象),也能很方便的构造HTTP请求。HTTP服务器提供了一组API,方便程序猿直接调用来操作HTTP协议,从而大大简化程序猿的开发功能~HTTP服务器是属于很大的类别,在这个类别下面其中就包含着很多具体的实现,Tomcat只是其中的一种(Java这个圈子里,最知原创 2022-06-22 22:21:33 · 466 阅读 · 1 评论 -
【HTTP协议——八股文(下)篇】
在前两篇我们介绍了关于HTTP请求响应当中的一些具体属性字段,那么我们如何通过代码构造出一个HTTP请求发送至服务器端呢?常见的构造HTTP请求可以通过HTTP客户端,即浏览器构造,基于Form表单或是ajax。还有一种是基于java当中的socket,这种方式并不常见,但在某些特殊场合我们仍然在用,这里我们不做过多介绍。form表单这种方式,是属于比较原始的构造请求,使用form就一定会涉及到页面跳转,此时浏览器就需要加载出来全新的页面,因此这样就非常不科学,尤其是页面相对来说比较复杂的时候,就会比较低效原创 2022-06-22 19:45:28 · 356 阅读 · 1 评论 -
【HTTP协议——八股文(中)篇】
在上篇中,我们描述了关于HTTP请求和HTTP响应中都包含哪些部分,下面我们先对Header部分中的数据进行详细剖析。Host表示要访问的服务器主机的地址和端口,这个地址可以是IP地址,也可以是域名,通过DNS域名解析系统分析过后转换成对应的IP地址。这两个属性都是在描述body,倘若请求当中没有body(GET),也就不需要这两个字段,一般情况下是POST带body而GET不会带body,一般的登录场景都会基于POST来实现,那么我们考虑为什么使用POST实现而不使用GET呢?常见的Content-Typ原创 2022-06-22 14:21:45 · 487 阅读 · 1 评论 -
【HTTP协议——八股文(上)篇】
首先我们了解到网络层的五层体系,跟我们程序猿最密切相关的就是应用层,说到应用层,我们就不得不提到一个协议,那就是HTTP协议。HTTP(“超文本传输协议”)是一种应用非常广泛的应用层协议。我们首先需要了解HTTP协议具体是干什么用的,再来了解他的机制。我们使用的抓包工具分为很多种,而对HTTP协议进行抓包的工具中最常见的是使用Fiddler,接下来我们通过Fiddler工具进行抓包,观察HTTP协议的格式以及内在细节。在进行抓包之前,我们需要了解Fiddler抓包工具的工作原理,当我们在浏览器输入网址的时候原创 2022-06-15 23:39:51 · 805 阅读 · 0 评论 -
【关于SpringBoot的配置文件】
1.为系统框架提供数据支持。2.为程序猿自己去调用。首先我们要了解,在配置文件中的信息都是以Key-Value的形式存在的。在此我们要知道,如果是程序猿自己配置的信息,那么可以在遵循Key-Value的格式下,定义任何名称的Key。 读取配置的方法一:@Value 注解读取单个配置项,此时我们可以重写afterPropertiesSet方法来查看是否读取到了配置文件中的内容,我们知道afterPropertiesSet方法是参数设置完成之后执行的方法,代码如下: 运行程序,控制台信息如下:具体分为两步操作:原创 2022-06-04 20:02:15 · 2894 阅读 · 0 评论 -
【Spring----对象的读取和存储】
一、存储Bean对象1.修改配置文件传统的存储Bean对象的方式:更简单的存储Bean对象的方式:此处我们看到,我们配置了存储对象的扫描包路径,只有被配置包下的所有类,添加了注解才能被正确的识别并保存到Spring中。2.添加注解存储对象我们要想对象存储到Spring中,有两种注解类型可以实现:1、类注解:@Controller、@Service、@Repository、@Component、@Configration2.方法注解:@Bean我们先了解类注解各自原创 2022-05-16 22:24:21 · 412 阅读 · 0 评论 -
【Spring中获取Bean(对象)的三种方式】
方式1:通过bean的id来获取这种方式的弊端在于需要强制类型转换方式2:通过类型获取这种方式的弊端对于多个对象的同一种类型的Bean获取会报错方式3:通过id+类型的方式来获取这种方式无需强制类型转换,也解决了对于多个对象的同一种Bean获取会报错的问题。三种方式相比之下,方式三是更推荐的使用方法,其次是方式一,方式二不建议使用~...原创 2022-05-13 22:41:07 · 2015 阅读 · 0 评论 -
【ApplicationContext和BeanFactory的区别和联系】
继承关系:二者同属于Spring容器的两个顶级接口,并且ApplicationCentext继承自BeanFactory,是BeanFactory的子类 功能方面:BeanFactory提供了基础的访问容器的能力,由于ApplicationContext继承自BeanFactory,因此其拥有BeanFactory的所有功能,在此基础上,它还拥有独特的特性,例如:对国际化支持、资源访问支持、以及事件传播等 性能方面:ApplicationContext是一次性加载并初始化所有Bean对象,所以它的启动过原创 2022-05-13 22:29:49 · 326 阅读 · 0 评论 -
【Spring核心与设计思想——IOC和DI】
一、Spring是什么?用一句话来概括Spring:Spring是包含了众多工具方法的IoC容器。那么问题来了,什么是容器?什么是IoC容器?1、什么是容器?容器这个词的本身含义就是用来容纳某种物品的装置。至此,我们目前在Java中接触过的容器有哪些?List/Map ..... -> 数据存储的容器 Tomcat -> Web容器2、什么是IoC?IoC = Inversion of Control 中文意思是“控制反转”,也就是说Spring是一个“控制反转”原创 2022-05-13 18:01:06 · 318 阅读 · 0 评论 -
【关于JVM,不得不知道的那些事儿】
一、JVM内存区域划分JVM主要是分成四个区域:堆、栈、程序计数器、方法区JVM本质上是一个java进程,JVM启动之后就会从操作系统这里申请到一大块内存~每个线程,都有自己的栈和程序计数器~下面我们对于这四个区域进行详细的描述~1.堆:里面放的就是new出来的对象我们程序中每new一个实例对象,就会放到堆中。2.方法区:里面放的是类对象.java =》 .class =》 JVM就会把 .class进行加载,加到内存里=》类对象类对象里都包含哪些内容:类的st原创 2022-05-11 17:44:48 · 850 阅读 · 1 评论 -
【网络相关面试问题——八股文篇(上)】
TCP/IP五层协议栈一、应用层应用层是程序猿最常打交道的一层其他四层,都是操作系统、驱动、硬件实现好了的。应用层的最主要任务就是“设计并实现一个应用层协议”。举个例子:开发的项目是一个点外卖的软件。在要开发的功能中有一个功能叫获取用户的历史订单,这些记录存放在数据库里,此时这样的功能,就需要涉及到前端(客户端)和后端(服务器)之间的交互~客户端发的请求需要包括:用户的ID;查询的起始时间;查询的结束时间;显示的条数...服务器回来的响应:查询是否成原创 2022-04-12 21:25:47 · 976 阅读 · 12 评论 -
【网络相关面试问题——八股文篇(中)】
在上篇中我们说到了关于保证TCP可靠传输的连接管理机制,需要重点理解三次握手的含义~接下来我们来继续探究关于网络的其他知识~一、传输层中关于TCP的其余内容1、关于连接管理中如何断开连接?二、网络层三、数据链路层五、物理层...原创 2022-04-15 22:53:49 · 2830 阅读 · 0 评论 -
【网络相关面试问题——八股文篇(下)】
在上篇和中篇我们介绍了关于应用层和运输层的一些协议和细节,在此篇我们描述关于网络的剩下三层内容~一、网络层网络层最核心的协议就是IP协议,下来我们看什么是IP协议~1、IP协议主要完成量方面的工作:①、地址管理②、路由选择(一)IP协议报头(一)4位版本:IP协议的版本号,当前取值只有两种,0100(IPv4),0110(IPv6)。我们只要讨论IPv4。(二)四位首部长度:IP的报头和TCP报头类似,都是可变的,带有选项。4位取值范围0-15,单位是4字节。如果取值是1原创 2022-04-17 10:53:12 · 3253 阅读 · 0 评论