首页 > 其他分享 >【速记】一些Spring面试题的速记口诀

【速记】一些Spring面试题的速记口诀

时间:2024-04-09 21:29:32浏览次数:22  
标签:容器 面试题 BeanFactory Spring 模式 速记 Bean 组件

帮助记忆,实际还是自己多练。

1.Spring 中应用了哪些设计模式呢?

  1. 工厂模式 : Spring 容器本质是一个大工厂,使用工厂模式通过 BeanFactory、ApplicationContext 创建 bean 对象。
  2. 代理模式 : Spring AOP 功能功能就是通过代理模式来实现的,分为动态代理和静态代理。
  3. 单例模式 : Spring 中的 Bean 默认都是单例的,这样有利于容器对 Bean 的管理。
  4. 模板模式 : Spring 中 JdbcTemplate、RestTemplate 等以 Template 结尾的对数据库、网络等等进行操作的模板类,就使用到了模板模式。
  5. 观察者模式: Spring 事件驱动模型就是观察者模式很经典的一个应用。
  6. 适配器模式 :Spring AOP 的增强或通知 (Advice) 使用到了适配器模式、Spring MVC 中也是用到了适配器模式适配 Controller。
    7.策略模式:Spring 中有一个 Resource 接口,它的不同实现类,会根据不同的策略去访问资源。
  • 上口诀:工厂创建Bean,代理实现AOP,单例管理利,模板简化层,观察响应事,适配联结用,策略选Resource。
    再简单一点:工厂代理单,模板观适策。


    2.说一说什么是 Io?什么是 DI? 

           所谓的IoC(控制反转,Inversion of Control),就是由容器来控制对象的生命周期和对象之间的关系。以前是我们想要什么就自己创建什么,现在是我们需要什么容器就帮我们送来什么。

  • IoC控制流:IoC(控制反转)改变了传统的控制流,不再是组件控制如何获取依赖,而是依赖被外部容器控制并反转这个过程。
  • DI注人心:DI(依赖注入)就像是给组件注入了新的生命,它让组件的依赖关系由外部容器注入,而不是组件自己创建或查找,使得组件更加专注于自己的职责。

    3.说说 BeanFactory 和 ApplicantContext?

  • BeanFactory(Bean 工厂)是 Spring 框架的基础设施,面向 Spring 本身。BeanFactory 是类的通用工厂,可以创建并管理各种类的对象。
  • ApplicantContext(应用上下文)建立在 BeanFactoty 基础上,面向使用 Spring 框架的开发者。ApplicationContext 由 BeanFactory 派生而来,提供了更多面向实际应用的功能。
  • 心脏BeanFactory泵生命BeanFactory作为Spring容器的核心,就像心脏一样为应用程序提供动力和生命,负责Bean的创建和生命周期管理。
  • 身体Application连脉动ApplicationContext作为更高级的容器,就像身体一样包含了BeanFactory的所有功能,并提供了额外的服务和特性,如同身体中的血管和脉络,连接并支持整个应用程序的运作。
    BeanFactory基础设,简单快速单线程接。
    ApplicationContext全功能,安全多线程企业行。

    4.你知道 Spring 容器启动阶段会干什么吗?

  • 加载配置:容器读取配置信息,这些信息可以来自XML文件、注解或Java配置类。
  • 注册Bean:容器根据配置信息创建BeanDefinition对象,并将它们注册到容器中。
  • 实例化Bean:容器根据注册的信息实例化Bean,创建Bean的实例。
  • 处理依赖关系:容器处理Bean之间的依赖关系,通过依赖注入将所需的资源提供给Bean。
  • 初始化Bean:容器调用Bean的初始化方法或执行初始化回调,如BeanPostProcessors。
  • 发布事件:容器可以发布上下文刷新事件,通知其他组件上下文已准备就绪。
  • 完成启动:完成所有Bean的初始化后,容器启动成功,应用程序上下文准备就绪。
     
  • 载配置注册Bean实例Bean打依赖初始Bean发事件

    待更新

标签:容器,面试题,BeanFactory,Spring,模式,速记,Bean,组件
From: https://blog.csdn.net/xilito/article/details/137567178

相关文章

  • Springboot文件上传
    packagecom.example.springboot.controller;importcn.hutool.core.io.FileUtil;importcn.hutool.core.util.IdUtil;importcn.hutool.core.util.StrUtil;importcom.example.springboot.enity.Files;importcom.example.springboot.mapper.FileMapper;importcom.ex......
  • Spring Cloud 集成 Redis
    目录前言步骤引入相关maven依赖添加相关配置使用方法发布订阅发布一个消息注意总结前言在当今的软件开发领域,分布式系统已经成为一种主流的架构模式,尤其是在处理大规模、高并发、高可用的业务场景时。然而,随着系统复杂性的增加,缓存机制的重要性也日益凸显。缓存不......
  • Java基础知识-面向对象编程(OOP)-Java集合框架-多线程和并发-Spring框架
    Java基础知识:Java的四种基本数据类型是:byte、short、int、long(整数类型)、float、double(浮点类型)、char(字符类型)、boolean(布尔类型)。它们之间的区别主要在于占用的内存大小和表示范围不同。Java中的String是不可变的意味着一旦String对象被创建,它的值就不能被修改。这意味着St......
  • springboot3使用自定义注解+AOP+redis优雅实现防重复提交
     ⛰️个人主页:   蒾酒......
  • Spring Boot、Nacos配置文件properties、yml、yaml的优先级
    在标准的SpringBoot应用中,本地配置加载顺序如下:bootstrap.yamlbootstrap.propertiesbootstrap-{profile}.yamlbootstrap-{profile}.propertiesapplication.yamlapplication.propertiesapplication-{profile}.yamlapplication-{profile}.propertiesnacos配置中心共享......
  • C++程序分享--常见编程面试题:判断字符串是否为回文串
    关注我,持续分享逻辑思维&管理思维;可提供大厂面试辅导、及定制化求职/在职/管理/架构辅导;有意找工作的同学,请参考博主的原创:《面试官心得--面试前应该如何准备》,《面试官心得--面试时如何进行自我介绍》, 《做好面试准备,迎接2024金三银四》。【图解《程序员面试常见的十大算法......
  • Spring Security——13,认证成功&&失败&&注销成功处理器
    认证成功&&失败&&注销成功处理器说明:一、认证成功处理器1.1自定义成功处理器1.2配置自定义成功处理器二、认证失败处理器2.1自定义失败处理器2.2配置自定义失败处理器三、登出成功处理器3.1自定义登出处理器3.2配置登出处理器四、完结撒花一键三连有没有捏~~......
  • 【spring】@Scope注解学习
    @Scope介绍@Scope注解是Spring框架中用于指定bean作用域的注解。在Spring中,一个bean的作用域定义了该bean的生命周期和创建bean实例的上下文。Spring提供了几种预定义的作用域,同时也支持自定义作用域。通过使用@Scope注解,开发者可以更精确地控制Spring容器如何创建和维护bean......
  • 前端面试题 — 浏览器安全问题
    1.什么是XSS攻击?如何防范XSS攻击?XSS攻击是一种跨站脚本攻击,攻击者通过在网页中注入恶意脚本来获取用户信息或控制页面。防范XSS攻击的方法包括对用户输入进行过滤和转义、使用HTTP头部中的ContentSecurityPolicy(CSP)等。2.什么是CSRF攻击?如何防范CSRF攻击?CSRF攻击是一种跨......
  • Spring AOP 技术详解
    学完AOP技术,真的不得不佩服发明AOP技术的人,真是个天才!!!想要了解AOP,首先要了解什么叫代理。1.代理我们先来说说什么叫做代理:        假如我要买辆奥迪A7,我不会直接去长春一汽工厂去买,为啥?路途远,而且,如果以这样方式购买,一手交钱,一手交车,事先没人给我介绍车辆配置情况......