クラス ControllerAdviceBean
java.lang.ObjectSE
org.springframework.web.method.ControllerAdviceBean
- 実装されているすべてのインターフェース:
Ordered
必ずしもインスタンス化する必要はなく、
@ControllerAdvice Spring 管理の Bean に関する情報をカプセル化します。findAnnotatedBeans(ApplicationContext) メソッドを使用して、このような Bean を検出できます。 このクラスは Spring Framework の内部クラスであり、アプリケーションが手動で @ControllerAdvice Bean を作成するために使用するためのものではありません。
- 導入:
- 3.2
- 作成者:
- Rossen Stoyanchev, Brian Clozel, Juergen Hoeller, Sam Brannen
フィールドのサマリー
インターフェース Ordered から継承されたフィールド
HIGHEST_PRECEDENCE, LOWEST_PRECEDENCEコンストラクターの概要
コンストラクターコンストラクター説明ControllerAdviceBean(StringSE beanName, BeanFactory beanFactory, ControllerAdvice controllerAdvice) メソッドのサマリー
修飾子と型メソッド説明booleanstatic ListSE<ControllerAdviceBean> findAnnotatedBeans(ListableBeanFactory beanFactory) 指定されたListableBeanFactoryで@ControllerAdviceのアノテーションが付けられた Bean を見つけ、ControllerAdviceBeanインスタンスとしてラップします。static ListSE<ControllerAdviceBean> findAnnotatedBeans(ApplicationContext context) 指定されたApplicationContextで@ControllerAdviceのアノテーションが付けられた Bean を見つけ、ControllerAdviceBeanインスタンスとしてラップします。含まれている Bean の型を返します。intgetOrder()含まれている Bean のオーダー値を取得します。inthashCode()booleanisApplicableToBeanType(@Nullable ClassSE<?> beanType) 指定された Bean 型がこのControllerAdviceBeanによって通知される必要があるかどうかを確認します。このControllerAdviceBeanの Bean インスタンスを取得します。必要に応じて、BeanFactoryを介して Bean 名を解決します。toString()
コンストラクターの詳細
ControllerAdviceBean
public ControllerAdviceBean(StringSE beanName, BeanFactory beanFactory, ControllerAdvice controllerAdvice) - パラメーター:
beanName- Bean の名前beanFactory- 最初に Bean 型を取得し、後で実際の Bean を解決するBeanFactorycontrollerAdvice- Bean の@ControllerAdviceアノテーション- 導入:
- 5.2
メソッドの詳細
getOrder
public int getOrder()含まれている Bean のオーダー値を取得します。順序値は以下のアルゴリズムを用いて遅延取得され、キャッシュされます。ただし、スコープ付き Bean(たとえば、リクエストスコープまたはセッションスコープの Bean)として設定された
@ControllerAdviceBean は、積極的に解決されないことに注意してください。スコープ付き@ControllerAdviceBean ではOrderedは考慮されません。- 解決された Bean が
Orderedを実装している場合は、Ordered.getOrder()から返された値を使用します。 - ファクトリメソッドがわかっている場合は、
OrderUtils.getOrder(AnnotatedElement)によって返される値を使用します。 - Bean 型がわかっている場合は、
Ordered.LOWEST_PRECEDENCEをデフォルトのオーダー値として使用し、OrderUtils.getOrder(Class, int)から返された値を使用します。 - それ以外の場合は、デフォルトのフォールバックオーダー値として
Ordered.LOWEST_PRECEDENCEを使用します。
- 解決された Bean が
getBeanType
resolveBean
このControllerAdviceBeanの Bean インスタンスを取得します。必要に応じて、BeanFactoryを介して Bean 名を解決します。Bean インスタンスが解決されると、それがシングルトンであればキャッシュされ、
BeanFactoryでの繰り返し検索が回避されます。isApplicableToBeanType
equals
hashCode
toString
findAnnotatedBeans
指定されたApplicationContextで@ControllerAdviceのアノテーションが付けられた Bean を見つけ、ControllerAdviceBeanインスタンスとしてラップします。返されるリスト内の
ControllerAdviceBeanインスタンスはOrderComparator.sort(List)を使用してソートされることに注意してください。- 関連事項:
findAnnotatedBeans
指定されたListableBeanFactoryで@ControllerAdviceのアノテーションが付けられた Bean を見つけ、ControllerAdviceBeanインスタンスとしてラップします。返されるリスト内の
ControllerAdviceBeanインスタンスはOrderComparator.sort(List)を使用してソートされることに注意してください。- 導入:
- 7.0
- 関連事項: