SpringMVC框架下前端jsp頁面引入js,css,img等檔案失敗的問題
阿新 • • 發佈:2018-12-16
初學mvc,今天在做一個小模組的時候發現jsp前端頁面寫的jquery語句無效,查了之後在發現要在jsp的page屬性里加上一個isELIgnored="false" 的屬性,然而加上之後還是用不了引入的.js, .css, .jpg等格式的檔案,怎麼辦呢,又去查資料。
發現問題出在web.xml配置檔案裡,要想用這些字尾的檔案,必須在web.xml配置檔案里加入如下程式碼:
<servlet-name>default</servlet-name> <url-pattern>*.jpg</url-pattern> </servlet-mapping> <servlet-mapping> <servlet-name>default</servlet-name> <url-pattern>*.css</url-pattern> </servlet-mapping> <servlet-mapping> <servlet-name>default</servlet-name> <url-pattern>*.js</url-pattern> </servlet-mapping> <servlet-mapping> <servlet-name>default</servlet-name> <url-pattern>*.gif</url-pattern> </servlet-mapping> <servlet-mapping> <servlet-name>default</servlet-name> <url-pattern>*.png</url-pattern> </servlet-mapping>
然後重啟tomcat,發現還™不行,找哇找,發現在我定義的一個controller裡它的mapping是@RequestMapping(“/index/comein”)該方法會返回字串“index”,瀏覽器中jsp檔案的訪問路徑是 http://localhost:8080/speech/index/comein
而我引入js的路徑是這樣的:<img alt="" src="images/welcome.png">
那麼問題就來了,我的jsp檔案是怎麼去找我的welcome.png這張圖片的呢?
答案是,它找的是與我的index/comein同級下的index.jsp檔案,而實際上根本沒有這一級,所以就找不到
解決方法很簡單,把<img alt="" src="images/welcome.png">改為<img alt="" src="../images/welcome.png">即可!