面试官:你先回去等通知吧!这个 Java 岗位我还有机会吗?
面试官:看你简历写的不错,先简单自我介绍下?
我:大佬好!我是小程,工作时长两年半,目前负责在公司打杂,啊不,负责维护公司的两个项目…
面试官:hmmm,你们项目中 Spring 用的多么?
我:还可以,基本上都用得到。(平时都是百度着用用啊)
面试官:那你讲讲使用 Spring 的 AOP 具体是指什么?
我:(这个我背过答案!)AOP 是面向切面编程,能够将那些与业务无关,却为业务模块所共同调用的逻辑或责任封装起来,便于减少系统的重复代码,降低模块间的耦合度,并有利于未来的可扩展性和可维护性。
面试官:嗯,理解的很棒啊,那你知道有哪些 Spring 的扩展点吗?
我:扩展点?BeanDefinition?BeanFactory?
面试官:还有呢?
我:没了呀。
面试官:好吧,你知道市面上哪些主流框架扩展了 Spring,如何扩展?
我:我知道 MyBatis 扩展了 Spring!如何扩展的…呃,不太清楚,其他的没怎么接触过,不太了解。我也…
面试官:我懂了,那你简单阐述一下 Spring bean 的生命周期。
我:这个,我只记得过程有点复杂,具体的,记不清了…
面试官:那再问你一点别的吧,
Spring 是否支持循环依赖;哪些情况下支持?
Spring 体系中的 beanDefinition 怎么理解?
讲讲 Spring 在处理循环依赖为什么需要使用三级缓存?
Spring 体系中有些后置处理器?能讲讲主要作用不?
我:这个…
面试官看了看表:哟,已经下午 3 点了,这么晚了啊?今天就到这里吧,你有什么问题要问我吗?
我:我挂了吗?
面试官:没没没,你先回去等通知吧!
Spring 作为现在最流行 java 开发技术,其内部源码设计非常优秀。如果你不会 Spring,那么很可能面试官会让你回家等通知。
Spring 是什么?
有一个工地,几百号人在用铁锹铲子挖坑。
如果开一辆挖掘机来,用一天时间干的活就相当于一个工人一个月的工作量。而且这个挖掘机是免费开源的,不用花钱买,仅仅需要学习掌握如何操作。
你会如何选择?
这几百号人的工地就是企业应用项目实施团队,而挖掘机就是 Spring。
Spring 框架为开发 Java 应用程序提供了全面的基础架构支持。Spring 包含了一些很好的功能,如依赖注入和开箱即用的模块:
Spring JDBC
Spring MVC
Spring Security
Spring AOP
Spring ORM
Spring Test
这些模块能极大缩短应用程序的开发时间,提高我们的工作效率。
Spring bean 的生命周期
但是现在很多程序员对于 Spring 的理解只停留在很浅的层面。很多人只关注自己用的那部分代码的逻辑,而并不真正去理解框架。
如果你不懂 Spring,那么大厂面试官也不会懂你为什么敢来面试?
Sping 概述
解释对象/关系映射集成模块
Spring 通过提供 ORM 模块,支持我们在直接 JDBC 之上使用一个对象/关系映射映射(ORM)工具,Spring 支持集成主流的 ORM 框架,如 Hiberate,JDO 和 iBATIS SQL Maps。Spring 的事务管理同样支持以上所有 ORM 框架及 JDBC。
依赖注入
什么是 Spring 的依赖注入?
依赖注入,是 IOC 的一个方面,是个通常的概念,它有多种解释。这概念是说你不用创建对象,而只需要描述它如何被创建。你不在代码里直接组装你的组件和服务,但是要在配置文件里描述哪些组件需要哪些服务,之后一个容器(IOC 容器)负责把他们组装起来。
Spring Beans
什么是 Spring 的内部 bean?
当一个 bean 仅被用作另一个 bean 的属性时,它能被声明为一个内部 bean,为了定义 inner bean,在 Spring 的 基于 XML 的 配置元数据中,可以在 <property/>或 <constructor-arg/> 元素内使用<bean/> 元素,内部 bean 通常是匿名的,它们的 Scope 一般是 prototype。
Spring 注解
什么是基于注解的容器配置?
相对于 XML 文件,注解型的配置依赖于通过字节码元数据装配组件,而非尖括号的声明。开发者通过在相应的类,方法或属性上使用注解的方式,直接组件类中进行配置,而不是使用 xml 表述 bean 的装配关系。
Spring 数据访问
Spring 面向切面编程(AOP)
Spring 的 MVC
篇幅原因,我就不把题目一一的展示出来了,这规规整整的 69 道面试题,在不翻阅资料的情况下,你能答对多少呢?
说在最后
关于面试题这一块,小编做了一些归纳和整理,都是很常见的面试题,还有字节跳动面试被问到的面试题。其实,这些面试题都是跟大家项目运用息息相关的,日常积累会比刷题更有效。
MySQL 系列面试题
SpringBoot 系列面试题
......
如果这篇文章能够帮助到你,希望您能点赞转发加个关注,支持一下小编!
资料已整理成文档,免费获取,需要的小伙伴可以+ VX: mxk6072
评论