zoukankan      html  css  js  c++  java
  • 9、spring注解学习(bean的生命周期)——使用JSR25:在bean的方法上用@PostConstruct和@PreDestroy注解

    1、创建Bird类

    @Component
    public class Bird {
        public Bird() {
            System.out.println("Bird的构造方法执行了");
        }
        
        //对象构造并属性赋值后执行
        @PostConstruct
        public void PostConstruct() {
            System.out.println("Bird的PostConstruct方法执行了");
        }
        
        @PreDestroy
        public void destroy() {
            System.out.println("Bird的销毁方法执行了");
        }
    }

    2、在spring配置类中配置扫描Bird所在位置,使得Bird能够注入

    /**
     * 测试bean的生命周期的配置
     */
    @Configuration
    @ComponentScan(value="com.atguigu")
    public class MainConfigOfLifeCycle {
    
    }

    3、创建测试方法进行测试

        /*
         * 测试通过使用JSR25:在bean的方法上用@PostConstruct和@PreDestroy进而实现初始和销毁方法
         */
        @Test
        public void test03() {
            AnnotationConfigApplicationContext applicationContext = new AnnotationConfigApplicationContext(MainConfigOfLifeCycle.class);
            applicationContext.close();
        }

    结果得到:

    注意:

      单例对象:在容器创建时就注入,另外调用了初始化方法,容器关闭前执行了销毁方法
       多例对象:只有在获取的时候容器才给构造并调用初始化方法,另外容器不会调用多例对象的销毁方法

  • 相关阅读:
    开源高性能网络库Libevent的简介
    网络IO之阻塞、非阻塞、同步、异步总结【转】
    C语言20150620
    EF那点事
    SSO单点登录的实现原理是怎样的
    SQL索引器
    基础数学知识
    hibernate优化笔记(随时更新)
    JAVA中保留小数的多种方法
    Hibernate的session缓存和对象的四种状态
  • 原文地址:https://www.cnblogs.com/lyh233/p/12441497.html
Copyright © 2011-2022 走看看