8 -- 深入使用Spring -- 2...4 使用@PostConstruct和@PreDestroy定制生命周期行为

Posted limeOracle

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了8 -- 深入使用Spring -- 2...4 使用@PostConstruct和@PreDestroy定制生命周期行为相关的知识,希望对你有一定的参考价值。

      8.2.4 使用@PostConstruct和@PreDestroy定制生命周期行为

        @PostConstruct 和 @PreDestroy 同样位于javax.annotation 包下,也是来自Java EE 规范的两个Annotation,Spring直接借鉴了它们,用于定制Spring容器中Bean的生命周期行为。

        @PostConstruct : 类似于<bean.../>元素中init-method属性的功能。用于修饰方法使之成为Bean的初始化方法;

        @PreDestroy : 类似于<bean.../>元素中destroy-method属性的功能。用于修饰方法使之成为Bean销毁之前的方法。

package edu.pri.lime._8_2_4.bean.impl;

import org.springframework.stereotype.Component;

import edu.pri.lime._8_2_4.bean.Axe;
import edu.pri.lime._8_2_4.bean.Person;

@Component
public class Chinese implements Person {

    @Resource(name="steelAxe")
    private Axe axe;
    
    /*可以让Spring在该Bean的依赖关系注入完成之后回调该方法*/
    @PostConstruct
    public void init(){
        System.out.println("正在执行初始化的init方法...");
    }
    /*可以让Spring在销毁该Bean之前回调该方法*/
    @PerDestroy
    public void close(){
        System.out.println("正在执行销毁之前的close方法...");
    }
    public void useAxe() {
        System.out.println(axe.chop());
    }

}

啦啦啦

啦啦啦

以上是关于8 -- 深入使用Spring -- 2...4 使用@PostConstruct和@PreDestroy定制生命周期行为的主要内容,如果未能解决你的问题,请参考以下文章

8 -- 深入使用Spring -- 7...1 启动Spring 容器

8 -- 深入使用Spring -- 0...

8 -- 深入使用Spring -- 8...1 Spring提供的DAO支持

8 -- 深入使用Spring -- 4... Spring的AOP

8 -- 深入使用Spring -- 2...5 Spring 3.0 新增的注解

8 -- 深入使用Spring -- 7...4 使用自动装配