springmvc對靜態資源的訪問

2021-09-02 21:14:58 字數 1396 閱讀 1831

在web.xml檔案中經常看到這樣的配置default,這個配置的作用是:對客戶端請求的靜態資源如、js檔案等的請求交由預設的servlet進行處理,如下所示:

下面是從中摘錄的一些資料

如何你的dispatcherservlet攔截"*.do"這樣的有字尾的url,就不存在訪問不到靜態資源的問題。

如果你的dispatcherservlet攔截"/",為了實現rest風格,攔截了所有的請求,那麼同時對*.js,*.jpg等靜態檔案的訪問也就被攔截了。

我們要解決這個問題。

目的:可以正常訪問靜態檔案,不可以找不到靜態檔案報404。

方案一:啟用tomcat的defaultservlet來處理靜態檔案

要配置多個,每種檔案配置乙個   

要寫在dispatcherservlet的前面, 讓 defaultservlet先攔截請求,這樣請求就不會進入spring了,我想效能是最好的吧。

方案二: 在spring3.0.4以後版本提供了mvc:resources ,  使用方法:

xml**  

<

mvc:resources

location="/images/"

/>

方案三 ,使用

xml**  

<

mvc:default-servlet-handler

/>

訪問乙個,還要走層層匹配。不知效能如何?

最後再說明一下,方案

二、方案三 在訪問靜態資源時,如果有匹配的(近似)總***,就會走***。如果你在攔截中實現許可權檢查,要注意過濾這些對靜態檔案的請求。

如何你的dispatcherservlet攔截 *.do這樣的url字尾,就不存上述問題了。還是有字尾方便。

springmvc對靜態資源的訪問

1 在webmvc conf.xml檔案中,新增 location web inf web resources 表示對專案中的靜態資源可以直接已專案名 resources來進行訪問。2 controller層返回json資料方法 在配置檔案中增加如下配置 register defaults true...

SpringMVC 配置靜態資源

如何你的dispatcherservlet攔截 do這樣的url,就不存在訪問不到靜態資源的問題。如果你的dispatcherservlet攔截 攔截了所有的請求,同時對 js,jpg的訪問也就被攔截了。目的 可以正常訪問靜態檔案,不要找不到靜態檔案報404。方案一 啟用tomcat的default...

springMVC訪問靜態資源

web.xml springmvcservlet name org.springframework.web.servlet.dispatcherservletservlet class contextconfiglocationparam name classpath config spring s...