在2021年对人工智能和机器学习的期望
如果仅仅是实例化跟依赖注入当然简单,问题是如果我们要完成自定义的要求,Spring提供了一系列接口跟配置来完成 Bean 的初始化过程,看下整个IOC容器初始化Bean的流程。 一般情况下我们自定义Bean的初始化跟销毁方法下面三种: 1.通过 XML 或者 @Bean配置 通过xml或者@Bean(initMethod="init", destroyMethod="destory")来实现。 2.使用 JSR250 规则定义的(java规范)两个注解来实现 @PostConstruct: 在Bean创建完成,且属于赋值完成后进行初始化,属于JDK规范的注解。 @PreDestroy: 在bean将被移除之前进行通知,在容器销毁之前进行清理工作。 提示:JSR是由JDK提供的一组规范。 3.通过继承实现类方法 实现InitializingBean接口的afterPropertiesSet()方法,当beanFactory创建好对象,且把bean所有属性设置好之后会调这个方法,相当于初始化方法。 实现DisposableBean的destory()方法,当bean销毁时会把单实例bean进行销毁
对于单实例的bean,可以正常调用初始化和销毁方法。对于多实例的bean,容器只负责调用时候初始化,但不会管理bean, 容器关闭时不会调用销毁方法 5. BeanFactory 和 FactoryBean 5.1 BeanFactory
5.2 FactoryBean
6. Spring生命周期
Spring IOC 初始化跟销毁 Bean 的过程大致分为Bean定义、Bean初始化、Bean的生存期 跟 Bean的销毁4个部分。 (编辑:吉安站长网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |