SpringBoot:实现bean懒加载的2种方式(基于springBoot 2.6.6)

bean懒加载有两种方式:一是配置全局懒加载,二是配置某个bean上的懒加载。如果同时配置了两种方式,则以bean上配置懒加载属性为准。
1.在配置文件application.properties配置全局懒加载:

#默认false
spring.main.lazy-initialization=true

同时,也可以通过编码的方式设置全局懒加载

        SpringApplication springApplication=new SpringApplication(Start.class);
        springApplication.setLazyInitialization(false);
        springApplication.run(args);

2.在bean上通过@Lazy注解配置某个bean的懒加载

package cn.edu.tju.config;

import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import org.springframework.context.annotation.Lazy;
import org.springframework.web.client.RestTemplate;

@Configuration
public class BeanConfiguration {
    @Bean
    @Lazy(false)
    public RestTemplate getRestTemplate(){
        System.out.println("测试程序启动时是否会创建RestTemplate Bean......");
        return new RestTemplate();
    }
}

如果按上述配置,则Spring Boot启动时,会创建RestTemplate这个bean,
在这里插入图片描述


版权声明:本文为amadeus_liu2原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。