2

アノテーションが付けられていないクラスでも@Component、アノテーションで宣言されているときに Spring コンテキストに登録されることに気付きました@Import

@Configuration
@Import({MyBean.class})
class MyConfig {
    @Bean
    Object object(MyBean myBean) { // this works
        return new Object();
    }
}

class MyBean {} // no annotation here

@Importこの動作は、ドキュメントからはあまり明確ではありません。

これは欲しいですか?それはどこかに文書化されていますか?@component非クラスとクラスのインポートに違いはあります@Componentか?

ドキュメントには次のように記載されています。

@Configuration クラス、ImportSelector および ImportBeanDefinitionRegistrar 実装、および通常のコンポーネント クラスをインポートできます。

「通常のコンポーネント クラス」とは何ですか? 任意のクラスまたは@Component?で注釈が付けられたクラス

4

1 に答える 1