第5页

  • 2024.10.11 | cuithink | 917次围观
    Bean生命周期中的一些类
    16.1. ApplicationContextInitializer常用于设置环境变量属性,IOC容器对象创建完以后执行。public class myApplicationInitializer implements ApplicationContextInitializer {     @Override     public ...
  • 2024.10.11 | cuithink | 823次围观
    FactoryBean和BeanFactory的区别
    BeanFactory 和 FactoryBean 是 Spring 框架中两个不同的接口,它们的作用和使用场景略有不同:BeanFactory:BeanFactory 是 Spring 框架中定义 bean 的工厂接口。它是 Spring 框架的核心接口之一,负责创建、配置和管理 bean 对象。BeanFactory 提供了一种松耦合的方式,允许将应用程序的配置和依赖注入与实际的 Java 代码分离开来。BeanFactory 的实现包括 XmlBeanFactory、A...
  • 2024.10.11 | cuithink | 821次围观
    Bean的创建过程
    那么Spring到底是如何来创建一个Bean的呢,这个就是Bean创建的生命周期,大致过程如下利用该类的构造方法来实例化得到一个对象(但是如何一个类中有多个构造方法,Spring则会进行选择,这个叫做推断构造方法)得到一个对象后,Spring会判断该对象中是否存在被@Autowired注解了的属性,把这些属性找出来并由Spring进行赋值(依赖注入)依赖注入后,Spring会判断该对象是否实现了BeanNameAware接口、BeanClassLoaderAware接口、Be...
  • 2024.10.11 | cuithink | 830次围观
    Spring支持的几种bean的作用域
    Spring框架支持以下五种bean的作用域:singleton : bean在每个Spring ioc 容器中只有一个实例。prototype:一个bean的定义可以有多个实例。request:每次http请求都会创建一个bean,该作用域仅在基于web的Spring ApplicationContext情形下有效。session:在一个HTTP Session中,一个bean定义对应一个实例。该作用域仅在基于web的Spring ApplicationContext情形下...
  • 2024.10.11 | cuithink | 807次围观
    BeanFactory 和 ApplicationContext有什么区别?
    BeanFactory和ApplicationContext是Spring的两大核心接口,都可以当做Spring的容器。其中ApplicationContext是BeanFactory的子接口。依赖关系BeanFactory:是Spring里面最底层的接口,包含了各种Bean的定义,读取bean配置文档,管理bean的加载、实例化,控制bean的生命周期,维护bean之间的依赖关系。ApplicationContext接口作为BeanFactory的派生,除了提供BeanFa...
  • 2024.10.11 | cuithink | 867次围观
    Spring框架中有哪些不同类型的事件
    Spring 提供了以下5种标准的事件:上下文更新事件(ContextRefreshedEvent):在调用ConfigurableApplicationContext 接口中的refresh()方法时被触发。上下文开始事件(ContextStartedEvent):当容器调用ConfigurableApplicationContext的Start()方法开始/重新开始容器时触发该事件。上下文停止事件(ContextStoppedEvent):当容器调用Configurabl...
  • 2024.10.11 | cuithink | 844次围观
    装饰器模式
    装饰器模式在不改变原始类接口的情况下,对原始类功能进行增强,并且支持多个装饰器的嵌套使用装饰器模式的各个角色Component 抽象构件角色: 是具体构件和抽象装饰类的父类,声明了具体构件中实现的业务方法,使得客户端能以一致的方式处理未装饰和已装饰对象。Concrete Component 具体构件角色: 是抽象构件类的子类,定义了具体的构建对象并实现了抽象构建中声明的方法。装饰类可以给它增加额外的职责(方法)。Decorator 抽象装饰角色: 是抽象构件类的子类,用于给具...
  • 2024.10.11 | cuithink | 791次围观
    模板方法模式
    在操作中定义算法的框架,将一些步骤推迟到子类中。模板方法让子类在不改变算法结构的情况下重新定义算法的某些步骤。模板方法中的算法可以理解为广义上的业务逻辑,并不是特指某一个实际的算法.定义中所说的算法的框架就是模板, 包含算法框架的方法就是模板方法.模板方法(Template Method)模式包含以下主要角色:抽象父类:定义一个算法所包含的所有步骤,并提供一些通用的方法逻辑。具体子类:继承自抽象父类,根据需要重写父类提供的算法步骤中的某些步骤。抽象类(Abstract Cla...
  • 2024.10.11 | cuithink | 846次围观
    门面模式(外观模式)
    定义了一个高层、统一的接口,外部与通过这个统一的接口对子系统中的一群接口进行访问。通过创建一个统一的外观类,用来包装子系统中一个 / 多个复杂的类,客户端可通过调用外观类的方法来调用内部子系统中所有方法场景案例小成的爷爷已经80岁了,一个人在家生活:每次都需要打开灯、打开电视、打开空调;睡觉时关闭灯、关闭电视、关闭空调;小成买了一个智能家具控制器(外观对象/统一接口)给他爷爷,他爷爷只需要一键就能打开/关闭 灯、电视机、空调即用外观模式来为所有子系统设计一个统一的接口客户端只...
  • 2024.10.11 | cuithink | 705次围观
    观察者模式
    观察者模式它是用于建立一种对象与对象之间的依赖关系,一个对象发生改变时将自动通知其他对象,其他对象将相应的作出反应在观察者模式中有如下角色:Subject:抽象主题(抽象被观察者),抽象主题角色把所有观察者对象保存在一个集合里,每个主题都可以有任意数量的观察者,抽象主题提供一个接口,可以增加和删除观察者对象。ConcreteSubject:具体主题(具体被观察者),该角色将有关状态存入具体观察者对象,在具体主题的内部状态发生改变时,给所有注册过的观察者发送通知。Observe...