以下面试题,基于网络整理,和自己编辑。具体参考的文章,会在文末给出所有的链接。
如果胖友有自己的疑问,欢迎在星球提问,我们一起整理吊吊的 Spring 面试题的大保健。
而题目的难度,艿艿尽量按照从容易到困难的顺序,逐步下去。
注意 1 ,这个面试题,暂时不包括 Spring MVC 部分。主要以 Spring IoC、Spring AOP、Spring Transaction 为主。
注意 2 ,T T Spring 怎么会有这么多问题,艿艿自己面试很多都不太问,跟背书一样。所以整理的过程,真的是痛苦万分。
Spring 是一个很庞大的技术体系,可以说包容一切,所以本文我们按照下面的顺序,罗列各种面试题:
Spring 整体相关的面试
Spring IoC 相关的面试题
Spring AOP 相关的面试题
Spring Transaction 相关的面试题
Spring Data Access 相关的面试题
Spring 整体
什么是 Spring Framework?
Spring 是一个开源应用框架,旨在降低应用程序开发的复杂度。
它是轻量级、松散耦合的。
它的轻量级主要是相对于 EJB 。随着 Spring 的体系越来越庞大,大家被 Spring 的配置搞懵逼了,所以后来出了 Spring Boot 。
它具有分层体系结构,允许用户选择组件,同时还为 J2EE 应用程序开发提供了一个有凝聚力的框架。
它可以集成其他框架,如 Spring MVC、Hibernate、MyBatis 等,所以又称为框架的框架( 粘合剂、脚手架 )。
Spring Framework 中有多少个模块,它们分别是什么?
如下是一张比较早期版本的 Spring Framework 的模块图:
艿艿:因为它的配色比较好看,哈哈哈哈。所以,没自己画一个最新的。
我们按照一个一个分块来说。
Spring 核心容器
对应图中,Core Container 。
该层基本上是 Spring Framework 的核心。它包含以下模块:
Spring Core
Spring Bean
核心容器提供 Spring 框架的基本功能。核心容器的主要组件是 BeanFactory,它是工厂模式的实现。BeanFactory 使用控制反转 (IOC)模式将应用程序的配置和依赖性规范与实际的应用程序代码分开。
Spring Context
Spring 上下文是一个配置文件,向 Spring 框架提供上下文信息。Spring 上下文包括企业服务,例如 JNDI、EJB、电子邮件、国际化、事件机制、校验和调度功能。
SpEL (Spring Expression Language)
Spring 表达式语言全称为 “Spring Expression Language”,缩写为 “SpEL” ,类似于 Struts2 中使用的 OGNL 表达式语言,能在运行时构建复杂表达式、存取对象图属性、对象方法调用等等,并且能与 Spring 功能完美整合,如能用来配置 Bean 定义。
或者说,这块就是 Spring IoC 。



还没有评论,来说两句吧...