假设你的DispatcherServlet拦截的是*.do这种URL。就不存在訪问不到静态资源的问题
假设你的DispatcherServlet拦截了"/"全部的请求,那同一时候对*.js,*.jpg的訪问也就被拦截了。
我们在进行springMVC开发时。必然会在jsp页面引入js、img和css等文件。
大多数人会将这些分类存放在WebRoot文件下新建的目录以下。同一时候。会在web.xml文件里配置拦截全部请求。
这样就造成了页面无法訪问到js、img和css目录中的文件了
方法一:在web.xml中配置defaultServlet来处理静态文件
<servlet-mapping> <servlet-name>default</servlet-name> <url-pattern>*.jpg</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>*.css</url-pattern> </servlet-mapping>
方法二:在Springmvc中能够利用mvc:resources
springmvc的<mvc:resources location="**" mapping="**"/>标签是在spring3.0.4出现的,主要是用来进行静态资源的訪问。
<!-- 对静态资源文件的訪问 --> <mvc:resources location="/js/" mapping="/js/**"/> <mvc:resources location="/img/" mapping="/img/**"/>location指定静态资源的位置
方法三:使用<mvc:default-servlet-handler/>
<mvc:default-servlet-handler/>
最后再说明一下,怎样你的DispatcherServlet拦截*.do这种URL,就不存上述问题了。
源代码下载:http://download.csdn.net/detail/itmyhome/7359943