SSM与SpringBoot常见面试题汇总

本文总结了SSM(Spring、SpringMVC、MyBatis)与SpringBoot的区别,SpringBoot自动配置原理,SpringMVC的执行流程,Spring的IOC和AOP概念,bean的作用域,以及如何处理单例bean的线程安全问题。同时,讨论了@Component与@Bean的区别,Spring的AOP执行顺序,以及Spring处理循环依赖的机制。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1.SSM三大框架和SpringBoot有什么区别?

答:SpringBoot是整个Spring技术栈的一个大整合,SpringBoot将原有的xml配置,简化为java注解的形式,而且SpringBoot有内置的tomcat服务器,可以以jar形式启动一个服务,可以快速部署发布web服务,而且使用idea可以很方便的搭建一个SpringBoot项目,选择对应的maven依赖,简化Spring应用的初始搭建以及开发过程,并且SpringBoot使用starter依赖自动完成bean配置,解决bean之间的冲突,并引入相关的jar包。

2.SpringBoot自动配置原理?

答:SpringBoot启动的时候加载主配置类,也就是加载了@SpringBootApplication这个注解,开启了自动配置功能。然后里面有一个@EnableAutoConfiguration这个注解,这个注解主要利用了一个EnableAutoConfigurationImportSelector选择器类给Spring容器中来导入一些组件。然后这个选择器类的父类有一个selectImports方法,这个方法里面有个configurations,并且这个configurations最终会被返回,这个configurations方法的作用就是利用SpringFactoriesLoader.loadFactoryNames从类路径下得到一个资源,它是扫描所有jar包类路径下的META-INF/spring.factories这个文件,把这个文件的urls拿到之后并把这些urls每一个遍历,最终把这些文件整成一个properties对象。然后它从properties对象里边获取一些值,把这些获取到的值来加载我们最终要返回的这个结果,这个结果就是我们要交给Spring容器中的所有组件

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值