这段时间里,我为大家准备了一大批Java相关面试题,学习资料,在这里先分享给大家我整理的65道spring面试题
![0799b64ac0a020aa27d1110b3348bf32.png](https://i-blog.csdnimg.cn/blog_migrate/704c3757de9293087c9067ddb43b0c17.jpeg)
1. 什么是spring?
- Spring 是个java企业级应用的开源开发框架。Spring主要用来开发Java应用,但是有些扩展是针对构建J2EE平台的web应用。Spring 框架目标是简化Java企业级应用开发,并通过POJO为基础的编程模型促进良好的编程习惯。
2. 使用Spring框架的好处是什么?
- 轻量:Spring 是轻量的,基本的版本大约2MB。
- 控制反转:Spring通过控制反转实现了松散耦合,对象们给出它们的依赖,而不是创建或查找依赖的对象们。
- 面向切面的编程(AOP):Spring支持面向切面的编程,并且把应用业务逻辑和系统服务分开。
- 容器:Spring 包含并管理应用中对象的生命周期和配置。
- MVC框架:Spring的WEB框架是个精心设计的框架,是Web框架的一个很好的替代品。
- 事务管理:Spring 提供一个持续的事务管理接口,可以扩展到上至本地事务下至全局事务(JTA)。
- 异常处理:Spring 提供方便的API把具体技术相关的异常(比如由JDBC,Hibernate or JDO抛出的)转化为一致的unchecked 异常。
3. Spring由哪些模块组成?
- 以下是Spring 框架的基本模块: Core module
- Bean module
- Context module
- Expression Language module
- JDBC module
- ORM module
- OXM module
- Java Messaging Service(JMS) module
- Transaction module
- Web module
- Web-Servlet module
- Web-Struts module
- Web-Portlet module
4. 核心容器(应用上下文) 模块。
- 这是基本的Spring模块,提供spring 框架的基础功能,BeanFactory 是 任何以spring为基础的应用的核心。Spring 框架建立在此模块之上,它使Spring成为一个容器。
5. BeanFactory – BeanFactory 实现举例。
- Bean 工厂是工厂模式的一个实现,提供了控制反转功能,用来把应用的配置和依赖从正真的应用代码中分离。
- 最常用的BeanFactory 实现是XmlBeanFactory 类。
篇幅限制,只有前五个在这文章里带答案,需要这个PDF可以私信我“spring”获取免费领取方式!
![37804297f2aa840d01d7ed5e35845c73.png](https://i-blog.csdnimg.cn/blog_migrate/bb991a630ae709f82f7669d2243188d2.jpeg)
6. XMLBeanFactory
7. 解释AOP模块
8. 解释JDBC抽象和DAO模块。
9. 解释对象/关系映射集成模块。
10. 解释WEB 模块。
12. Spring配置文件
13. 什么是Spring IOC 容器?
14. IOC的优点是什么?
15. ApplicationContext通常的实现是什么?
16. 什么是Spring的依赖注入?
17. 有哪些不同类型的IOC(依赖注入)方式?
18. 哪种依赖注入方式你建议使用,构造器注入,还是 Setter方法注入?
![6740ee970ccb7801c69fa7e05e764db1.png](https://i-blog.csdnimg.cn/blog_migrate/317abb5bf89dfbc440ce065b63d1e6c5.jpeg)
Spring Beans
19 .什么是Spring beans?
20. 一个 Spring Bean 定义 包含什么?
21. 如何给Spring 容器提供配置元数据?
22. 你怎样定义类的作用域?
23. 解释Spring支持的几种bean的作用域。
24. 解释Spring框架中bean的生命周期。
25. 哪些是重要的bean生命周期方法? 你能重载它们吗?
26. 什么是Spring的内部bean?
27. 在 Spring中如何注入一个java集合?
28. 什么是bean装配?
我在这里把答案都给大家分享出来,包括我刷过的题,还有近一年面试的经历,我都整理成了PDF,也花了我挺多时间,都放在我的知乎专栏了:小朔哥的Java路