2017-11-23 7 views
0

私はnmj-api-frameworkプロジェクトを持っています。これはスプリングブートバックエンドWebプロジェクトです。 プロジェクトでは、interceptorsHandlerInterceptorAdapterに拡張して定義し、それらを拡張してWebMvcConfigurerAdapterに登録しました。 私はそれがインターセプタを使用する一般的な方法だと思います。
Using Spring MVC HandlerInterceptor with Spring Boot - Hello World exampleが詳細を示しました。いくつかのスプリングブートプロジェクトでカスタムインターセプタを登録する方法

次に、nmj-api-frameworkに依存する他のプロジェクトがあります。 nmj-api-project1およびnmj-api-project2他のカスタムインターセプタをに登録して、ベースプロジェクトnmj-api-frameworkを変更しないでください。
これを達成する方法はいくつかありますか?

答えて

0

解決方法は、nmj-api-framework,nmj-api-project1nmj-api-project2の間のSpringコンテキストの共有方法に依存します。

単一コンポーネントのスキャンがある場合は、nmj-api-project1nmj-api-project2というインターセプタを登録するだけで、あなたが指摘したブログ投稿に記載されています。

+0

異なる 'WebMvcConfigurerAdapter'クラスに登録されているインターセプタの順序を指定できますか? nmj-api-project1に登録されたインターセプタがnmj-api-frameworkに登録される前に実行されていました。 – niaomingjian

+0

'@ Order'アノテーションを使用して、' WebMvcConfigurerAdapter'ビーンが登録されている順序を明示的に指定することができます。 – luboskrnac

+0

nmj-api-framework projctで 'WebMvcConfigurerAdapter'を変更できない場合は、' @ DependsOn' – luboskrnac

関連する問題