`

[ Spring ] Bean LifeCycle

 
阅读更多

Bean Life Cycle (Initialization & Destory)

 

We have 3 ways to control th life-cycle of Bean.

1) @PostConstruct and @PreDestory

2) afterPropertiesSet() from interface InitializingBean

     destory() from interface DisposableBean

3) Standard method naming, init() & destory()

 

 

Above are 3 mechanisms, if applying the mechanisms to one bean with different method names,the sequence would be :

 

INFO [com.vincent.spring.main.LifeCycleBean] - LifeCycleBean Constructor
INFO [com.vincent.spring.main.LifeCycleBean] - postConstruct
INFO [com.vincent.spring.main.LifeCycleBean] - AfterPropertiesSet
INFO [com.vincent.spring.main.LifeCycleBean] - init
 

 

if with same names, will only be excuted once.

 

 

In applicationcontext.xml, should add below:

 

 

<bean class="org.springframework.context.annotation.CommonAnnotationBeanPostProcessor" />
 

 

For @PostConstruct & @PreDestory,we need to add the dependency of "javax.annotation" to pom.xml.

 

 

<dependency>
	<groupId>javax.annotation</groupId>
	<artifactId>jsr250-api</artifactId>
	<version>1.0</version>
</dependency>
分享到:
评论

相关推荐

    Spring Bean Lifecycle Control

    在Spring框架中,Bean生命周期控制是一项关键特性,它允许开发者对Bean从创建到销毁的整个过程进行精细管理。本文将深入探讨Spring Bean的生命周期,并通过实际示例来演示如何运用这些概念。 首先,Spring Bean的...

    第四章 Spring Bean基础1

    - **Bean 行为配置元素**:如作用域(scope)、自动绑定模式(autowiring mode)、生命周期回调方法(lifecycle callbacks)等,这些决定了 Bean 如何被实例化和管理。 - **依赖**:Bean 可能与其他 Bean 有依赖...

    spring-lifecycle:一个用于试验 spring 生命周期的小示例应用程序

    标题中的"spring-lifecycle"暗示了这个项目专注于探索Spring框架中bean的生命周期管理。让我们深入了解一下Spring框架的生命周期及其相关的知识点。 在Spring中,bean的生命周期是指从创建到销毁的整个过程,它包括...

    bean_lifecycle.zip

    本篇文章将深入探讨Spring Bean的生命周期注解以及不同Bean注入注解之间的区别。 一、Bean的生命周期注解 1. `@PostConstruct`:此注解用于标记一个方法,该方法将在Bean初始化完成后,但在任何依赖注入之前执行。...

    Spring part 2 :Bean的生命周期

    Spring还提供了Lifecycle接口,允许更灵活的生命周期管理。这个接口包含start()和stop()方法,适合于那些需要启动和停止操作的Bean,比如数据库连接池。 在Spring容器中,Bean的生命周期还包括容器感知的初始化和...

    Spring学习笔记之bean生命周期

    《Spring学习笔记之bean生命周期》 在Spring框架中,Bean是核心组件,它们构成了应用程序的主要结构。理解Spring Bean的生命周期对于有效地管理和优化Spring应用程序至关重要。本文将深入探讨Spring Bean的生命周期...

    第二十章 Spring 应用上下文生命周期(ApplicationContext Lifecycle)1

    在Spring框架中,ApplicationContext是应用的核心,它管理着所有Bean的生命周期。本章将深入探讨Spring应用上下文的生命周期,从启动准备阶段到关闭阶段,包括各个关键步骤和相关组件的作用。 1. **Spring 应用上...

    Getting.started.with.Spring.Framework.2nd.Edition1491011912.epub

    - Bean lifecycle interfaces - Customizing beans using BeanPostProcessors and BeanFactoryPostProcessors - Bean definition inheritance - JSR 250's and 330's annotations for dependency injection - ...

    Spring高级篇二.pdf

    &lt;bean id="lifecyclebean" class="cn.itcast.spring.d_lifecycle.lifecyclebean" init-method="setup" destroy-method="teardown"&gt; &lt;/bean&gt; ``` - 需要注意的是,`destroy-method`仅对单例`scope="singleton"`...

    spring集成socket服务

    为了将Socket服务与Spring框架结合,我们可以创建一个Spring Bean,该Bean负责初始化和管理Socket服务。这个Bean可以是一个`@Component`或`@Service`注解的类,其中包含创建ServerSocket和处理连接的方法。 2. **...

    模拟Spring的IOC

    - **生命周期管理(Lifecycle Management)**:处理Bean的初始化、销毁方法调用。 **4. 创建Bean定义** 在模拟过程中,我们可以使用一个简单的Java类(例如,`BeanDefinition`)来表示Bean的定义,包含类名、属性值...

    Spring-Reference_zh_CN(Spring中文参考手册)

    3.5.1. Lifecycle接口 3.5.1.1. 初始化回调 3.5.1.2. 析构回调 3.5.2. 了解自己 3.5.2.1. BeanFactoryAware 3.5.2.2. BeanNameAware 3.6. bean定义的继承 3.7. 容器扩展点 3.7.1. 用BeanPostProcessor定制bean 3.7....

    Spring in Action 使用Maven 构建Spring 工程

    在Spring工程中,我们常常会使用Maven的生命周期(Lifecycle)和插件(Plugins)。例如,`mvn compile`命令会编译源代码,`mvn test`则会执行单元测试,而`mvn package`会打包应用为可部署的格式,如JAR或WAR。此外...

    bean学习笔记

    此外,还可以使用Lifecycle接口或InitializingBean和DisposableBean接口来控制Bean的生命周期。 6. **AOP(面向切面编程)与Bean**: AOP是Spring提供的另一个重要特性,用于处理系统中的横切关注点,如日志、事务...

    SSH笔记-IOC容器中 Bean 的生命周期

    在SSHnote_Spring_9_LifeCycle这个文件中,可能包含了详细的示例代码和讲解,展示了如何创建一个实现`BeanPostProcessor`的类,并在Bean初始化和销毁时添加自定义逻辑。通过学习这部分内容,你可以更深入地理解...

    详解如何在低版本的Spring中快速实现类似自动配置的功能

    Spring还提供了另一个扩展点——**BeanPostProcessor**,它允许我们对已经创建的Bean实例进行定制逻辑回调,比如在Bean创建后执行特定操作。 关于Bean的定制,有以下几种常见方式: 1. **Lifecycle Callback**:...

    spring的Ioc.zip

    Spring Bean有多种作用域,如单例(Singleton)、原型(Prototype)、请求(Request)、会话(Session)和全局会话(Global Session)。不同的作用域决定了Bean的创建和共享策略。 10. **AOP(面向切面编程)与IoC...

    spring 4.3 源代码

    在4.3版本中,Spring提供了多种方式来控制Bean的生命周期,如init-method和destroy-method属性,以及实现了InitializingBean和DisposableBean接口。此外,Lifecycle接口允许自定义启动和停止逻辑。 4. **AOP(面向...

    Spring 2.0 开发参考手册

    3.5.1. Lifecycle接口 3.5.2. 了解自己 3.6. bean定义的继承 3.7. 容器扩展点 3.7.1. 用BeanPostProcessor定制bean 3.7.2. 用BeanFactoryPostProcessor定制配置元数据 3.7.3. 使用FactoryBean定制实例化逻辑 ...

Global site tag (gtag.js) - Google Analytics