@Bean主要在@Configuration中,通過方法進行注入相關的Bean,@Compoent與@Service歸為一類,在類上加注入對應的類,需要的朋友可以參考下" />

欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

SpringBoot自動裝配原理詳細解析

 更新時間:2024年01月19日 09:35:10   作者:景慶197  
這篇文章主要介紹了SpringBoot自動裝配原理詳細解析,一個對象交給Spring來管理的三種方式 @Bean @Compoment @Import,
@Bean主要在@Configuration中,通過方法進行注入相關的Bean,@Compoent與@Service歸為一類,在類上加注入對應的類,需要的朋友可以參考下

1.@SpringBootApplication注解理解

一個對象交給Spring來管理的三種方式 @Bean @Compoment @Import  

@Bean主要在@Configuration中,通過方法進行注入相關的Bean

@Compoent與@Service歸為一類,在類上加注入對應的類

@Import注解只有一value方法,注釋中指名該注解必須作用在@Configuration定義的類上,Value可以為想要交割Spring管理的類文件數組 Impor

 2.查看創(chuàng)建Bean的個數,以及展示

查看展示個數

ConfigurableApplicationContext context = SpringApplication.run(PaymentMain8001.class, args);
int counts = context.getBeanDefinitionCount();
System.out.println(counts);

查看IOC中所有的Bean

ConfigurableApplicationContext context = SpringApplication.run(PaymentMain8001.class, args);
ConfigurableListableBeanFactory beanFactory = context.getBeanFactory();
beanFactory.getBeanNamesIterator().forEachRemaining(System.out::println);

3.條件化配置注解

在自動配置類上有一些ConditionXxxx注解嗎,該注解的作用進行條件化的選擇

注解作用
@ConditionalOnBean如果存在某個Bean, 配置類生效
@ConditionalOnMissingBean如果不存在某個Bean, 配置類生效
@ConditionalOnClass如果存在某個類, 配置類生效
@ConditionalOnMissingClass如果不存在某個類, 配置類生效
@ConditionalOnProperty如果存在某個屬性配置, 配置類生效
@ConditionalOnWebApplication如果是一個web應用, 配置類生效
@ConditionalOnNotWebApplication如果不是一個web應用, 配置類生效

相關舉例WebMvcAutoconfiguration 

視圖解析器 

4.SpringBootApplication.run()的理解

 

舉例:存在對應的配置文件

到此這篇關于SpringBoot自動裝配原理詳細解析的文章就介紹到這了,更多相關SpringBoot自動裝配內容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!

相關文章

  • 詳解springboot項目帶Tomcat和不帶Tomcat的兩種打包方式

    詳解springboot項目帶Tomcat和不帶Tomcat的兩種打包方式

    這篇文章主要介紹了詳解springboot項目帶Tomcat和不帶Tomcat的兩種打包方式,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2020-09-09
  • Spring Boot開發(fā)Web應用詳解

    Spring Boot開發(fā)Web應用詳解

    這篇文章主要介紹了Spring Boot開發(fā)Web應用詳解,小編覺得挺不錯的,現在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2017-04-04
  • gradle和maven有哪些區(qū)別

    gradle和maven有哪些區(qū)別

    這篇文章主要介紹了gradle和maven有哪些區(qū)別,幫助大家更好的理解和選擇java程序的構建工具,感興趣的朋友可以了解下
    2021-01-01
  • 淺談MyBatis 如何執(zhí)行一條 SQL語句

    淺談MyBatis 如何執(zhí)行一條 SQL語句

    Mybatis 是 Java 開發(fā)中比較常用的 ORM 框架。在日常工作中,我們都是直接通過 Spring Boot 自動配置,并直接使用,但是卻不知道 Mybatis 是如何執(zhí)行一條 SQL 語句的,下面就一起講解一下
    2021-05-05
  • Java編程中線程池的基本概念和使用

    Java編程中線程池的基本概念和使用

    這篇文章主要介紹了Java編程中線程池的基本概念和使用,多線程編程是使Java程序實現并發(fā)的一個重要手段,需要的朋友可以參考下
    2015-11-11
  • 詳解Spring中Bean的加載的方法

    詳解Spring中Bean的加載的方法

    本篇文章主要介紹了Spring中Bean的加載的方法,小編覺得挺不錯的,現在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2017-04-04
  • Spring數據源及配置文件數據加密實現過程詳解

    Spring數據源及配置文件數據加密實現過程詳解

    這篇文章主要介紹了Spring數據源及配置文件數據加密實現過程詳解,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下
    2020-05-05
  • 簡單的用java實現讀/寫文本文件的示例

    簡單的用java實現讀/寫文本文件的示例

    同時也展示了如果從輸入流中讀出來內容寫入輸出流中(僅限文本流) 三個例子可以獨立存在,所以根據需要只看其中一個就行了。
    2008-07-07
  • 解決java main函數中的args數組傳值問題

    解決java main函數中的args數組傳值問題

    這篇文章主要介紹了解決java main函數中的args數組傳值問題,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2021-02-02
  • 詳解Maven多模塊打包遇到的問題解決方法

    詳解Maven多模塊打包遇到的問題解決方法

    這篇文章主要介紹了詳解Maven多模塊打包遇到的問題解決方法,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2020-09-09

最新評論