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();
        }

    结果得到:

    注意:

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

  • 相关阅读:
    22.抽象类
    21.多态
    20.修饰符
    19.继承
    day46---MySQL数据库进阶(一)
    day45---mysql数据库基本操作初阶(二)
    day45---计算机安全项目(癞蛤蟆)
    day44---数据库初阶(一)
    day44---windows下安装MySQL-5.6.37
    day42---几种network IO模型
  • 原文地址:https://www.cnblogs.com/lyh233/p/12441497.html
Copyright © 2011-2022 走看看