Spring Automatic Scanningに関して、制御層では、Annotation Configuration @Controllerを使用して、エラーなしでプロジェクトを正常に開始します。ただし、ページがリダイレクトされると、対応する傍受は実行されません。インターフェイス全体は、デフォルトインターフェイスでのみ404にリダイレクトできます。ポスターが初めて試したので、大きな円の後、スキャン中にMVCコントローラーが成功しなかったことが最初に確認されました。詳細については、コードをご覧ください。
<! - コントローラーアノテーションサポートをオンにします - > <コンテキスト:コンポーネント - シンベースパッケージ= "com.cjw.test.controller" use-default-filters = "false"> </context:component-scan> <! - コントローラー注釈を効果的にします - > <mvc:annotation-driven/> <!処理 - > <MVC:デフォルトセルバーハンドラー/>
ただし、ページリダイレクトを実行する場合、コントローラーでスキャンするときにコントロール層が他の注釈と区別されないため、404が常に報告されます。変更されたコードは次のとおりです。
<! - コントローラーアノテーションサポートを有効にする - > <コンテキスト:Component-Scanベースパッケージ= "com.cjw.test.controller" use-default-filters = "false"> <コンテキスト:include-filter type = "annotation" expression = "org.springframework.stertype.controller"/> <
同時に、構成アイテムをより簡単にするために、ポスターは対応する構成を個別に排除し、関数全体のスタートアップまたはジャンプにどのような影響を与えるかを観察します。
<MVC:Annotation-driven/>
後で私はジャンプできないことがわかりました。最後に、理由が次のとおりであることを確認しました。
最終的な構成に<MVC:Annotation-driven/>がない場合、すべてのコントローラーが解析されない場合があります。リクエストがある場合、リクエストがあるときに一致しないすべての要求クラスがある場合、デフォルトのサーブレットは<MVC:デフォルトセルバーハンドラー/>、つまりデフォルトのサーブレットによって処理されます。 <mvc:annotation-driven/>を追加した後、対応するリクエストはコントローラーによって処理され、対応するコントローラーがないため、デフォルトのサーブレットによって静的リソースが処理されます。要するに、対応するコントローラーがない場合、デフォルトのサーブレットで処理されます。
web.xml構成は、静的ページのリダイレクトを使用して、次のとおりです。
<サーブレットマッピング> <Servlet-Name>テスト</servlet-name> <url-pattern>/</url-pattern> </servlet-mapping>
上記は、編集者によって導入されたスプリングMVCアノテーション自動スキャン障害の原因の分析です。ご質問がある場合は、メッセージを残してください。編集者は時間内に返信します。 wulin.comのウェブサイトへのご支援ありがとうございます!