ディスパッチャー サーブレットはアプリのルートにマップされます。
<servlet-mapping>
<servlet-name>dispatcher</servlet-name>
<url-pattern>/</url-pattern>
</servlet-mapping>
Webroot に「static」というフォルダーがあります。CSS、JS、および画像ファイルが含まれています。ただし、ディスパッチャー サーブレット マッピングのため、静的コンテンツの要求は 404 で終わります。
これに対処するためのソリューションがあちこちにあることを私は知っています。
ディスパッチャーをより具体的な URL (:context:/app/ など) にマップしてから、フィルターを作成してリクエストをインターセプトし、条件付きでデフォルトのサーブレットにマップするか、Spring ディスパッチャーに委任します。
URL 書き換えのトリック。
使用して
<mvc:resources />
問題は、私のマッピングは XML ベースであり、注釈を使用するという名目でマッピング構成をあちこちに分散させないことです。したがって、を使用する<mvc:resources />
と、xml ベースのマッピングが壊れ、別のコントローラーへのすべての URL マッピングが失われます。
これは<mvc:resources /
、一部の設定をオーバーライドして独自の設定を適用するためです。しかし、これは静的コンテンツの最もクリーンなソリューションでもあります。
<mvc:resources />
私のxmlベースのマッピングを上書きしないように指示する方法はありますか?