`

spring4 初始化bean回调

阅读更多
初始化回调的几种方式

     1)采用xml配置

<bean id="exampleInitBean" class="examples.ExampleBean" init-method="init"/>


public class ExampleBean {

    public void init() {
        // do some initialization work
    }

}

   
     2)采用实现spring接口InitializingBean  然后实现方法afterPropertiesSet

public class AnotherExampleBean implements InitializingBean {

    public void afterPropertiesSet() {
        // do some initialization work
    }

}


    3)第三种定义初始化方式

public class DefaultBlogService implements BlogService {

    private BlogDao blogDao;

    public void setBlogDao(BlogDao blogDao) {
        this.blogDao = blogDao;
    }

    // this is (unsurprisingly) the initialization callback method
    public void init() {
        if (this.blogDao == null) {
            throw new IllegalStateException("The [blogDao] property must be set.");
        }
    }

}


<beans default-init-method="init">

    <bean id="blogService" class="com.foo.DefaultBlogService">
        <property name="blogDao" ref="blogDao" />
    </bean>

</beans>
分享到:
评论

相关推荐

    Spring bean初始化及销毁你必须要掌握的回调方法.docx

    当Spring容器创建并初始化Bean时,会寻找带有@PostConstruct注解的方法并执行。 2. **InitializingBean接口** 如果一个Bean实现了Spring的InitializingBean接口,那么它必须重写`afterPropertiesSet()`方法。此...

    spring容器初始化bean和销毁bean之前进行一些操作的方法

    本文将深入探讨如何在Spring容器初始化Bean和销毁Bean前后执行自定义的操作,以便于进行日志记录、资源清理等任务。 首先,我们需要了解Spring中Bean的生命周期。Bean的生命周期大致分为以下阶段: 1. 实例化:...

    浅谈spring容器中bean的初始化

    默认情况下,`lazy-init`的值为`default`或`false`,意味着容器启动时就会初始化Bean。 Bean的初始化过程包括以下几个步骤: 1. **装载Bean定义**:Spring容器读取XML配置文件,解析Bean的定义,包括其类型、依赖...

    Spring 源码分析(Bean的初始化)

    本篇文章主要分析了Spring如何通过`ClassPathXmlApplicationContext`来启动和初始化Bean的过程。 首先,`ClassPathXmlApplicationContext`是Spring的一种ApplicationContext实现,用于从类路径下的XML配置文件加载...

    spring bean life cycle

    3. **初始化**:在属性注入完成后,Spring会执行Bean实现的初始化回调方法,这些方法可以通过实现`InitializingBean`接口的`afterPropertiesSet()`方法或者使用`init-method`属性来指定。此外,还可以通过配置`@...

    spring bean的生命周期

    - **初始化回调**:Spring支持两种类型的初始化回调方法,即`@PostConstruct`注解的方法和在XML中定义的`init-method`属性指定的方法。 2. **容器管理的生命周期回调** - **Singleton Beans的懒加载**:如果Bean...

    详解Spring中bean生命周期回调方法

    在 Spring 中,使用 @PostConstruct 注解可以实现 Bean 的初始化回调,而使用 @PreDestroy 注解可以实现 Bean 的销毁回调。 Bean 生命周期回调方法的使用 Bean 生命周期回调方法可以在多种场景下使用,例如: * ...

    Spring Bean重复执行两次(实例被构造两次)问题分析

    3. **@PostConstruct与初始化回调**:Spring允许我们在Bean初始化后执行特定代码,通常通过`@PostConstruct`注解的方法来实现。如果这个方法被意外地调用了两次,那么Bean也会被构造两次。检查是否有多处调用或配置...

    spring的bean加载顺序样例项目

    在Spring框架中,Bean的加载顺序是一个重要的概念,它涉及到Spring容器如何管理和初始化Bean的过程。在"spring的bean加载顺序样例项目"中,我们可以通过分析和实验来深入理解这一主题。下面将详细阐述Spring Bean的...

    Spring Bean 加载顺序 .

    如果Bean定义了初始化回调方法,如`init-method`属性指定的方法,Spring会在初始化后执行这个方法。 9. **Bean的销毁**: 对于Singleton Bean,Spring在容器关闭时会调用`@PreDestroy`注解的方法和实现...

    Spring框架中Bean的生命周期 Spring中Bean有几种作用域

    3. **初始化**:在实例化和属性注入后,Spring调用Bean的初始化回调方法。这些方法可以通过以下方式定义: - `@PostConstruct`注解的方法:当容器调用该注解的方法时,表明Bean的初始化完成。 - `InitializingBean...

    spring bean的生命周期测试代码

    在Spring 4.2中,你可以通过`@Profile`注解来控制特定环境下的Bean激活,以及使用`@Lazy`注解延迟初始化Bean。测试代码可能包含了这些特性的使用示例,通过观察和运行代码,我们可以更好地理解这些功能的工作原理。 ...

    Spring bean生命周期demo

    4. **初始化回调** 初始化回调是在Bean实例化后,所有属性注入完成时执行的方法。Spring提供了`InitializingBean`接口的`afterPropertiesSet()`方法,或者自定义的初始化方法(通过`init-method`属性指定)。开发者...

    深度解析spring容器管理bean

    Spring容器还提供了多种管理Bean生命周期的方法,包括初始化回调、销毁回调、以及作用域(singleton、prototype等)。初始化回调是指在Bean实例化后、开始使用前执行的方法,可以通过`init-method`属性指定。销毁回...

    粗略实现spring创建bean

    - 初始化:Spring容器在创建Bean实例时,会执行初始化过程,包括实例化、属性设置(通过setter方法或构造函数注入)、初始化回调(如`InitializingBean`接口的`afterPropertiesSet()`方法或`@PostConstruct`注解的...

    spring4框架系列 [ 3 ]

    在Spring4框架中,Bean的生命周期管理是其核心特性之一,它允许开发者对对象的创建、初始化、使用以及销毁过程进行精确控制。本篇将详细探讨Spring4中Bean的生命周期及其可控点。 首先,让我们理解什么是Bean的生命...

    Spring bean 管理

    Spring通过一系列的回调方法来管理Bean的生命周期,包括初始化和销毁时的操作。 - 通过&lt;bean&gt;标签的init-method和destroy-method属性指定初始化和销毁方法。 - 容器在创建Bean实例时调用初始化方法,在销毁Bean...

    Spring中Bean的生命周期 applicationcontext的应用(实现国际化,事件的传递)

    3. **初始化回调**:在属性注入完成后,Spring会调用Bean的初始化方法。如果在Bean定义中配置了`init-method`,那么这个方法会被执行。此外,实现`InitializingBean`接口的Bean也会自动调用`afterPropertiesSet()`...

    Spring Bean 的生命周期

    3. **初始化回调**:Spring容器调用Bean的`init-method`指定的方法,如果配置了。这是Bean初始化的自定义逻辑执行的地方。 4. **AOP代理**:如果Bean配置了AOP相关的注解或切面,Spring会创建对应的代理对象,使得...

    Spring在应用中获得Bean的方法

    当调用`getBean()`方法时,它会触发一系列的逻辑,包括解析Bean定义、创建Bean实例、执行初始化回调等。 在`DefaultListableBeanFactory`中,`doGetBean()`方法是获取Bean的核心实现,它会检查Bean是否存在、处理...

Global site tag (gtag.js) - Google Analytics