
这可以说是让很多Springmvc初学者头疼的问题
所以我在web.xml中配置了dispatchservlet后,js、css甚至gif都不能正常显示
我们来看看我们配置的web.xml
springmvc org.springframework.web.servlet.DispatcherServlet contextConfigLocation /WEB-INF/applicationContext.xml 1 springmvc /
我以前也是这样的,这是什么意思?
这里涉及到一个知识点,就是url-pattern中/的区别
这里我引用别人的原话
url-pattern有5种配置模式: (1)/xxx:完全匹配/xxx的路径 (2)/xxx/*:匹配以/xxx开头的路径,请求中必须包含xxx。 (3)/*:匹配/下的所有路径,请求可以进入到action或controller,但是转发jsp时再次被拦截,不能访问jsp界面。 (4).xx:匹配以xx结尾的路径,所有请求必须以.xx结尾,但不会影响访问静态文件。 (5)/:默认模式,未被匹配的路径都将映射到刺servlet,对jpg,js,css等静态文件也将被拦截,不能访问。
因此,如果我们一开始就使用/方法引入js文件没有用,那么我们需要添加如下web.xml配置,让静态文件可以访问
default *.css default *.gif default *.jpg default *.js
但实际上引入js文件没有用,简单的方法是我们不需要那么复杂。其实我们可以把所有需要springmvc dispatchservlet的地方都设置成.do,这样静态文件就可以继续访问了。
否则我们需要设置需要servlet-mapping的defaultServlet。
最后,我将介绍一种方法。这是来自互联网。我还没有尝试过。我先发一下
推荐一个java版的问答社区开源项目FlyCms:
© 版权声明
THE END
喜欢就支持一下吧
请登录后发表评论
注册
社交帐号登录