Spring面试题

《林老师带你学编程》知识星球是由多个工作10年以上的一线大厂开发人员联合创建,希望通过我们的分享,帮助大家少走弯路,可以在技术的领域不断突破和发展。

🔥 具体的加入方式:

1.Spring框架?

Spring框架是由于软件开发的复杂性而创建的,  Spring使用的是基本的JavaBean来完成以前只可能由 EJB完成的事。从简单性、可测性和松更合性角度而言,绝大部分Java应用都可以用Spring。

2.Spring的整体架构?

大约分为20个模块。

3.Spring可以做什么?

4.Spring的优点?缺点?

优点:

   Spring属于低侵入设计。

   IOC将对象之间的依赖关系交给Spring,降低组件之间的更合,实现各个层之间的解更,让我们更专注 于业务逻辑。

  提供面向切面编程。

  对各种主流插件提供很好的集成支持。

  对事务支持的很好,只要配置即可,无须手动控制。

缺点:

  依赖反射,影响性能。

5.你能说几个Spring5的新特性吗?

   spring5整个框架基于java8

  支持http/2

   Spring Web MVC支持最新API

   Spring WebFlux 响应式编程

  支持Kotlin函数式编程

6.IOC?

负责创建对象、管理对象(通过依赖注入)、整合对象、配置对象以及管理这些对象的生命周期。

7.什么是依赖注入?

依赖注入是Spring实现IoC的一种重要手段,将对象间的依赖关系的控制权从开发人员手里转移到容 器。

8.IOC注入哪几种方式?

1.构造器注入

2.setter注入

3.接口注入(我们几乎不用)

9.IOC优点?缺点?

优点:

  组件之间的解糯,提高程序可维护性、灵活性。

缺点:

  创建对象步骤复杂,有一定学习成本。

  利用反射创建对象,效率上有损。(对于代码的灵活性和可维护性来看,  Spring对于我们的开发带来 了很大的便利,这点损耗不算什么喷)

10.bean 的生命周期?

1.Spring 对bean进行实例化。

2.Spring将值和bean的引用注入到 bean对应的属性中。

3.如果bean实现了BeanNameAware接口, Spring将bean的ID传递给setBeanName()方法。

4.如果bean实现了BeanFactoryAware接口,  Spring将调用setBeanFactory()方法,将 bean所在的应用引 用传入进来。

5.如果bean实现了ApplicationContextAware接口, Spring将调用setApplicationContext()方法,将bean 所在的应用引用传入进来。

6.如果bean实现了BeanPostProcessor 接口, Spring将调用他们的post-ProcessBeforeInitalization()方 法。

7.如果bean实现了InitializingBean接口, Spring将调用他们的after-PropertiesSet()方法,类似地,如果 bean使用init-method声明了初始化方法,该方法也会被调用。

8.如果bean实现了BeanPostProcessor接口, Spring将调用它们的post-ProcessAfterInitialization()方法。

9.此时,  bean已经准备就绪,可以被应用程序使用了,他们将一直驻留在应用上下文中,直到该应用被销 毁。

10.如果bean实现了DisposableBean接口, Spring将调用它的destory()接口方法,同样,如果bean使用 destroy-method声明了销毁方法,该方法也会被调用。

查看更多

滚动至顶部