Spring MVC Restfulと静的リソースの競合


Spring MVCのRestful、web.xmlは次のように構成する必要があります.


mvc-dispatcher
org.springframework.web.servlet.DispatcherServlet
1


mvc-dispatcher
/


注意/これは、css、jsなどを含むすべてのリクエストをこのservletがブロックしていることを示しています.したがって、上記の状況が発生します.このcss,jsなどの経路問題をどのように解決するかには,以下のようないくつかの解決策がある.
1.spring mvc resourceを使用して静的ファイルを読み込む
例えばWEN-INFでstaticフォルダを作成し、staticフォルダの中にcssフォルダを作成し、1を作成します.cssファイル
mvc-dispatcher-servletを変更します.xmlファイル



このように構成すると、http://your-ip:port/your-app/static/css/1.cssが直接アクセスしました.
2.default servletを採用
Webでxml内の構成


default
/static/*


そうすると、staticに接頭辞を付けたリクエストはすべてdefault servletに渡されて処理されます.君が望むならhttp://your-ip:port/your-app/static/css/1.cssは、webcontentディレクトリの下にあるcssフォルダの下にある1を表す.cssファイル.
3.ファイル拡張子による処理
Webでxml内の構成


default
*.png
*.js
*.css


4.spring servletにrestfulスタイルを使わない.urlに接頭辞を付ける


mvc-dispatcher
/app


このような目的はdispatchservletに/appで始まるURLをブロックさせ、css、jsなどをブロックしないことです.
5.spring servletに対してrestfulスタイルを使わない.urlに接尾辞を付ける


mvc-dispatcher
*.do


このような目的はdispatchservletに*のみブロックさせることである.doのurlcss,jsなどをブロックしない.