zoukankan      html  css  js  c++  java
  • 022 使用@Bean的属性完成初始化和销毁的指定

    一 .概述

    Bean的生命周期就是指,Bean的创建,初始化,销毁的整个过程.

    spring帮助我们实现整个过程,但是提供了很多的回调接口,我们

    可以自己定义这些方法.


     二 . 使用 init-method 来实现.

    组件:

    public class Person {
        
        public Person() {
            System.out.println("构造器在创建对象");
        }
        
        public void init() {
            System.out.println("我是init方法");
        }
        
        public void destroy() {
            System.out.println("我是销毁方法");
        }
    }

    配置类:

    @Configuration
    public class LifeConfig {
        
        @Bean(initMethod="init",destroyMethod="destroy")
        public Person person() {
            return new Person();
        }
    }

    我们使用@Bean注解的使用完成指定初始化和销毁方法.

    测试类:

    public class LifeTest {
        private static AnnotationConfigApplicationContext context = null;
        
        @Before
        public void init() {
            context = new AnnotationConfigApplicationContext(LifeConfig.class);
        }
        
        @Test
        public void test1() {
        }
        
        @After
        public void close() {
            context .close();
        }
    }

    这种方式很不错.没有什么侵入性,我们在@Bean注解上面完成了初始化和销毁的方法.


     三 .实现接口完成

    [1]初始化 实现InitializingBean接口

    [2]销毁实现 DisposableBean接口

    这里不做演示,因为侵入性的方式我们不喜欢用的.


     四 .使用JSR标准注解帮助实现

    其实这个是比较优雅的一种做法了.

    @PostConstruct

    @PreDestroy 

    前者表示在创建之后执行,后者表示在容器销毁执行.

  • 相关阅读:
    用自己的话描述wcf中的传输安全与消息安全的区别(一)
    web服务器( nginx )及请求代理
    windows系统安装
    邮箱使用
    常见dos命令总结
    前端技术碰到的陌生单词
    前端工作思考
    table标签详解
    PC 端响应式布局
    HTML标签嵌套规则
  • 原文地址:https://www.cnblogs.com/trekxu/p/9094876.html
Copyright © 2011-2022 走看看