クラス FullyQualifiedAnnotationBeanNameGenerator

java.lang.ObjectSE
org.springframework.context.annotation.AnnotationBeanNameGenerator
org.springframework.context.annotation.FullyQualifiedAnnotationBeanNameGenerator
実装されたすべてのインターフェース:
BeanNameGenerator

public class FullyQualifiedAnnotationBeanNameGenerator extends AnnotationBeanNameGenerator
@Component などのサポートされている型レベルのアノテーションを介して明示的な Bean 名が提供されない場合、デフォルトの Bean 名として完全修飾クラス名を使用する AnnotationBeanNameGenerator の拡張(サポートされるアノテーションの詳細については AnnotationBeanNameGenerator を参照)。

複数の自動検出されたコンポーネントが同じ非修飾クラス名(つまり、同じ名前であるが異なるパッケージに存在するクラス)を持つために名前が競合する場合は、AnnotationBeanNameGenerator よりもこの Bean 命名戦略を優先してください。

このクラスのインスタンスは、構成レベルのインポートのためにデフォルトで使用されることに注意してください。一方、コンポーネントのスキャン目的のデフォルトはプレーンな AnnotationBeanNameGenerator です。

導入:
5.2.3
作成者:
Juergen Hoeller, Sam Brannen
関連事項:
  • フィールドの詳細

    • INSTANCE

      public static final FullyQualifiedAnnotationBeanNameGenerator INSTANCE
      構成レベルのインポートの目的で使用される、デフォルトの FullyQualifiedAnnotationBeanNameGenerator インスタンスの便利な定数。
      導入:
      5.2.11
  • コンストラクターの詳細

    • FullyQualifiedAnnotationBeanNameGenerator

      public FullyQualifiedAnnotationBeanNameGenerator()
  • メソッドの詳細

    • buildDefaultBeanName

      protected StringSE buildDefaultBeanName(BeanDefinition definition)
      クラスからコピーされた説明: AnnotationBeanNameGenerator
      指定された Bean 定義からデフォルトの Bean 名を導出します。

      デフォルトの実装では、短いクラス名の大文字と小文字を区別しないバージョンを作成するだけです。"mypackage.MyJdbcDao" → "myJdbcDao"。

      内部クラスは "outerClassName.InnerClassName" の形式の名前を持つことに注意してください。名前でオートワイヤーしている場合、名前のピリオドが課題になる可能性があります。

      オーバーライド:
      クラス AnnotationBeanNameGeneratorbuildDefaultBeanName 
      パラメーター:
      definition - Bean 名を作成する Bean 定義
      戻り値:
      デフォルトの Bean 名 (非 null)