ホームページ >Java >&#&チュートリアル >/* にマップされたグローバル フロント コントローラー サーブレットを使用するときに静的リソースにアクセスする方法
/*
にマップされたグローバル フロント コントローラー サーブレットを使用した静的リソースへのアクセス Spring MVC DispatcherServlet などのグローバル フロント コントローラー サーブレットを使用する場合/* にマップされている場合、CSS、JavaScript、画像などの静的リソースへのアクセスが問題になる可能性があります。このマッピングは基本的にすべての受信リクエストをインターセプトするため、コントローラーのスコープ外に保存されているリソースへのアクセスが妨げられる可能性があります。
これを解決するには、コントローラー サーブレットをより具体的な URL パターン (/pages/* など) にマッピングすることを検討してください。これにより、静的リソースへのアクセス用に他のパスを開いたままにして、コントローラーが特定のページへのリクエストを処理できるようになります。
次に、静的コンテンツを /static などの専用フォルダーに配置します。この分離により、リソース管理が容易になり、コントローラーのコンテンツとの競合が防止されます。
最後に、静的リクエストと動的リクエストの両方を透過的に処理する /* をリッスンするフィルターを作成します。フィルターの doFilter() メソッドで、リクエスト URI を調べて、それが静的リソースに属しているかどうかを判断します。
そうである場合 (たとえば、「/static」で始まる場合)、リクエストをデフォルトのサーブレットに転送します。処理。それ以外の場合、リクエストがコントローラーのスコープに属している場合 (つまり、「/pages」で始まる場合)、リクエストを適切なページ処理ディスパッチャーに転送します。
このアプローチにより、静的リソースと動的リソースの両方にシームレスにアクセスできます。グローバル フロント コントローラー サーブレットの意図された機能を維持します。
以上が/* にマップされたグローバル フロント コントローラー サーブレットを使用するときに静的リソースにアクセスする方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。