1.指定初始化方法和销毁方法@Bean(initMethod="init",destoryMethod="desroty")
2.让Bean实现InitializingBean接口和DisposableBean接口
3. @PostConstruct @PreDestroy
4. BeanPostProcessor 的 postProcessBeforeInitialization方法和 postProcessAfterInitialization方法 在初始化方法前后执行
单例情况下,容器启动时就会创建Bean,会先执行构造函数,之后执行初始化函数,最后在容器关闭时执行销毁函数
多例情况下,容器启动时并不会创建Bean,在第一次使用时才会创建Bean,前俩步和单例情况下一样,只是不会执行销毁函数。