SpringBoot注入Bean的四种方式总结

 更新时间:2023年11月29日 11:09:41   作者:春来我不先开口,哪个虫儿敢作声?  
这篇文章主要给大家总结SpringBoot注入Bean的四种方式,启动类注入Bean,启动类扫描@ComponentScan,启动类@EnableConfigurationProperties以及启动类@Import这四种方式,文章通过代码示例讲解非常详细,需要的朋友可以参考下

统一测试类与config类

yml

student:
  red: dou

config 

@Configuration注解 与 @Component注解都可以。

@Data
@Configuration
@ConfigurationProperties(prefix = "student")  // 文件上传 配置前缀file.oss
public class MinIOConfigProperties implements Serializable {
 
    private String red;
 
}
@Data
@Component
@ConfigurationProperties(prefix = "student")  // 文件上传 配置前缀file.oss
public class MinIOConfigProperties implements Serializable {
 
    private String red;
 
}

test

@SpringBootTest
class SpringBootTest01ApplicationTests {
 
    @Autowired
    private MinIOConfigProperties minIOConfigProperties;
 
 
    @Test
    void contextLoads() {
        // 获取accessKey值
        String accessKey = minIOConfigProperties.getRed();
        System.out.println(accessKey);
    }
 
}

1. 启动类注入Bean

@SpringBootApplication
public class SpringBootTest01Application {
 
    public static void main(String[] args) {
        SpringApplication.run(SpringBootTest01Application.class, args);
    }
 
 
    @Bean
    public MinIOConfigProperties minIOConfigProperties() {
        return new MinIOConfigProperties();
    }
 
 
}
 

2.启动类扫描@ComponentScan

@ComponentScan(basePackages = "com.ma.config")
@SpringBootApplication
public class SpringBootTest01Application {
 
    public static void main(String[] args) {
        SpringApplication.run(SpringBootTest01Application.class, args);
    }
 
}
 

3.启动类@EnableConfigurationProperties

@SpringBootApplication
@EnableConfigurationProperties(MinIOConfigProperties.class)
public class SpringBootTest01Application {
 
    public static void main(String[] args) {
        SpringApplication.run(SpringBootTest01Application.class, args);
    }
 
}

4.启动类@Import

@SpringBootApplication
@Import(MinIOConfigProperties.class)
public class SpringBootTest01Application {
 
    public static void main(String[] args) {
        SpringApplication.run(SpringBootTest01Application.class, args);
    }
 
}

到此这篇关于SpringBoot注入Bean的四种方式总结的文章就介绍到这了,更多相关SpringBoot注入Bean内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • Java正则验证电话,手机,邮箱,日期,金额的方法示例

    Java正则验证电话,手机,邮箱,日期,金额的方法示例

    这篇文章主要介绍了Java正则验证电话,手机,邮箱,日期,金额的方法,结合具体实例形式分析了Java针对电话,手机,邮箱,日期,金额的正则判定操作技巧,需要的朋友可以参考下
    2017-03-03
  • springboot 配置使用swagger2操作

    springboot 配置使用swagger2操作

    这篇文章主要介绍了springboot 配置使用swagger2操作,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2020-10-10
  • SpringBoot整合Quartz实现动态配置的代码示例

    SpringBoot整合Quartz实现动态配置的代码示例

    这篇文章将介绍如何把Quartz定时任务做成接口,实现以下功能的动态配置添加任务,修改任务,暂停任务,恢复任务,删除任务,任务列表,任务详情,文章通过代码示例介绍的非常详细,需要的朋友可以参考下
    2023-07-07
  • SpringBoot请求参数接收方式

    SpringBoot请求参数接收方式

    这篇文章主要介绍了SpringBoot请求参数接收方式,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-02-02
  • Mybatis RowBounds 限制查询条数的实现代码

    Mybatis RowBounds 限制查询条数的实现代码

    Oracle 数据库查询增加RowBounds限制查询条数,默认是0到1000条。下面给大家分享Mybatis RowBounds 限制查询条数的实现代码,需要的朋友参考下吧
    2016-11-11
  • SpringBoot登录用户权限拦截器

    SpringBoot登录用户权限拦截器

    这篇文章主要介绍了SpringBoot登录用户权限拦截器,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2021-03-03
  • Java 坐标系相互转换方式

    Java 坐标系相互转换方式

    这篇文章主要介绍了Java中的坐标系相互转换方式,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2022-08-08
  • Spring中propagation的7种事务配置及说明

    Spring中propagation的7种事务配置及说明

    这篇文章主要介绍了Spring中propagation的7种事务配置及说明,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2021-06-06
  • java用静态工厂代替构造函数使用方法和优缺点

    java用静态工厂代替构造函数使用方法和优缺点

    这篇文章主要介绍了java用静态工厂代替构造函数使用方法和优缺点,需要的朋友可以参考下
    2014-02-02
  • 浅谈Java中的atomic包实现原理及应用

    浅谈Java中的atomic包实现原理及应用

    这篇文章主要介绍了浅谈Java中的atomic包实现原理及应用,涉及Atomic在硬件上的支持,Atomic包简介及源码分析等相关内容,具有一定借鉴价值,需要的朋友可以参考下。
    2017-12-12

最新评论