怎么使用SpringBoot实现懒加载和init-method

如题所述

第1个回答  2022-06-16
        在以前使用的Spring框架中,我们知道在Spring容器ioc的配置xml中,可以配置各种各样的Bean,并且可以指定Bean的加载方式,单例在ioc容器启动的时候,就开始加载,多例在获取bean的时候加载,但是我们也可以通过一个lazy-init来实现懒加载,不仅这样,我们还可以指定当Bean在容器中初始化的时候执行某些方法。这个时候就要使用init-method来指定方法名字。在使用完对象的时候,调用destory-method,来执行销毁方法。

        那么,现在使用了SpringBoot,怎么在项目中,实现上面说的内容呢。我们可以在SpringBoot的引导启动类中。配置Bean的时候,加上参数。像是下面这样:

如果要实现懒加载,可以加上注解@Lazy,这个时候,便会在使用到Bean获取该Bean的时候,才会初始化这个Bean。

还有一个全局懒加载,则是在启动引导类上面添加上注解@Lazy。这样。所有配置在启动引导类中的@Bean。都会被懒加载。