当前位置: 首页 > article >正文

SpringBoot注入Bean的几种方式

目录

统一测试类与config类

1. 启动类注入Bean

2.启动类扫描@ComponentScan

3.启动类@EnableConfigurationProperties

4.启动类@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);
    }

}


http://www.kler.cn/a/147583.html

相关文章:

  • K8S containerd拉取harbor镜像
  • flutter字体大小切换案例 小字体,标准字体,大字体,超大字体案例
  • 如何保证MySQL与Redis缓存的数据一致性?
  • 制作图片马常用的五种方法总结
  • 前端(3)——快速入门JaveScript
  • 入侵检测算法平台部署LiteAIServer视频智能分析平台行人入侵检测算法:科技守护安全的新篇章
  • Failure[ERROR_GET_BUNDLE_INSTALLER_FAILED]【Bug已解决-鸿蒙开发】
  • 浮点数在内存中的存储
  • 逆矩阵相关性质与例题
  • RK356x监控温度及CPU频率的服务(Ubuntu20.04)
  • Jmeter 压测保姆级入门教程
  • Windows全系列 本地密码暴力破解
  • 第二十章总结
  • Linux详解——常用命令(一)
  • UE5 - 虚幻引擎各模块流程图
  • C++学习之路(八)C++ 用Qt5实现一个工具箱(增加一个粘贴板记录管理功能)- 示例代码拆分讲解
  • 蓝桥杯第100 题 九宫幻方 DFS 全排列 C++ 解题思维
  • MySQL使用函数和存储过程实现:向数据表快速插入大量测试数据
  • springboot+vue智能企业设备管理系统05k50
  • Flink Flink中的分流
  • ESP32-Web-Server编程-JS 基础 2
  • SLURM资源调度管理系统REST API服务配置,基于slurm22.05.9,centos9stream默认版本
  • WPF实战项目十五(客户端):RestSharp的使用
  • WordPress老是提示无法连接到FTP服务器
  • 【产品设计】如何设计SaaS商业模式
  • leetcode目标和