<weblogic-web-app> ......省略其餘部分 <context-root>pad-sces</context-root> <virtual-directory-mapping> <local-path>D:/images</local-path> <url-pattern>/poster/*</url-pattern> </virtual-directory-mapping> </weblogic-web-app>
這裏用D:/images/poster/xxx.jpg 來表示文件服務器上的文件存放路徑。css
用<img src="http://localhost:7001/pad-sces/poster/xxx.jpg"/>來展現圖片html
不過,這樣有個弊端就是,咱們這邊採用的是自動化移交部署,要求測試環境和生產環境打在包裏的內容一致,不一致的要使用變量的形式引用包外配置的properties文件中的屬性值。咱們這個weblogic.xml是打在ear包中的,並且這個xml文件貌似不能讀到properties中的文件,所以,咱們又考慮換一種Spring MVC中的 <mvc:resources>標籤。web
<servlet-mapping> <servlet-name>default</servlet-name> <!--<url-pattern>*.js</url-pattern>--> <url-pattern>resources/*</url-pattern> </servlet-mapping>
<mvc:annotation-driven/> <mvc:resources mapping="/resources/**/" location="/resources/"/>
如此就沒必要另外添加一個mvc來處理靜態資源。而mvc知道靜態資源所處的位置爲resources文件夾。spring
兩種方法均可以將spring mvc配置處理靜態資源。spring-mvc
在SpringMVC3.0以後推薦使用<mvc:resources>方法服務器
<mvc:annotation-driven /> <mvc:resources location="/img/" mapping="/img/**"/> <mvc:resources location="/js/" mapping="/js/**"/> <mvc:resources location="/css/" mapping="/css/**"/>
說明:mvc
location元素表示webapp目錄;app
mapping元素表示以/static開頭的全部請求路徑,如/static/a 或者/static/a/b;webapp
該配置的做用是:DispatcherServlet不會攔截以/static開頭的全部請求路徑,並看成靜態資源post
交由Servlet處理。 例如:http://localhost:8080/static/a
參考: