spring MVC 访问静态资源的方式有三种,我使用的是mvc:resources的方式。
这种方式是在spring的配置文件里(如spring-mvc.xml)加入
1、必须加上
2、mvc:resources的location是指web项目下webContent下的静态资源位置,但一般不配置WEB-INF下的静态资源,因为WEB-INF下的资源不允许外部访问。硬要放开部分,需要写明/WEB-INF路径。
3、js文件、image文件和css文件一般放在webContent下的非WEB-INF目录下。
4、静态资源不能访问的情况一般是在web.xml中的DispatcherServlet下url-pattern里配置/,导致采用“default”servlet。
另:spring一些资料
http://blog.chinaunix.net/uid-20586655-id-3000946.html
http://elf8848.iteye.com/
http://my.oschina.net/aptx4869/blog/278863
这种方式是在spring的配置文件里(如spring-mvc.xml)加入
<mvc:resources mapping="/allSites/**" location="/WEB-INF/allSites/" />
<mvc:annotation-driven/>
来将静态资源访问权限放开。使用这种方式需要注意两点:
1、必须加上
<mvc:annotation-driven/>
,不然会报No handler mapping found for XXX的错误,没有任何一个action可以通过。
2、mvc:resources的location是指web项目下webContent下的静态资源位置,但一般不配置WEB-INF下的静态资源,因为WEB-INF下的资源不允许外部访问。硬要放开部分,需要写明/WEB-INF路径。
3、js文件、image文件和css文件一般放在webContent下的非WEB-INF目录下。
4、静态资源不能访问的情况一般是在web.xml中的DispatcherServlet下url-pattern里配置/,导致采用“default”servlet。
另:spring一些资料
http://blog.chinaunix.net/uid-20586655-id-3000946.html
http://elf8848.iteye.com/
http://my.oschina.net/aptx4869/blog/278863