初学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">即可!