アノテーションインターフェース Order


@Order は、アノテーション付きコンポーネントのソート順を定義します。

value() はオプションであり、Ordered インターフェースで定義されたオーダー値を表します。値が小さいほど優先度が高くなります。デフォルト値は Ordered.LOWEST_PRECEDENCE で、最低の優先度を示します(他の指定された順序値に負けます)。

注意 : Spring 4.0 以降、ターゲットベースのコンポーネントの順序値が考慮されるコレクションインジェクション(ターゲットクラスまたは @Bean メソッドのいずれか)でも、Spring の多くの種類のコンポーネントでアノテーションベースの順序付けがサポートされています。このような順序の値はインジェクションポイントでの優先順位に影響を与える可能性がありますが、依存関連と @DependsOn 宣言によって決定される直交関連であるシングルトンの起動順序には影響しないことに注意してください(実行時に決定される依存グラフに影響します)。

Spring 4.1 以降、標準の PriorityEE アノテーションは、オーダーシナリオでこのアノテーションのドロップイン置換として使用できます。単一の要素を選択する必要がある場合、@Priority には追加のセマンティクスが含まれる可能性があることに注意してください(AnnotationAwareOrderComparator.getPriority(java.lang.Object) を参照)。

または、オーダー値は Ordered インターフェースを介してインスタンスごとに決定することもできます。これにより、特定のクラスにアタッチされたハードコードされた値の代わりに、構成によって決定されたインスタンス値が可能になります。

順序付けられていないオブジェクトのソートセマンティクスの詳細については、OrderComparator の javadoc を参照してください。

導入:
2.0
作成者:
Rod Johnson, Juergen Hoeller
関連事項:
  • オプション要素のサマリー

    オプション要素
    修飾子と型
    オプションの要素
    説明
    int
    オーダー値。