jsp中根目录

在myEclipse中 jsp里的“../image/xx.jpg”表示根目录可以显示图片
但是部署到tomcat里用浏览器打开就无法显示图片,这是为什么呢?

应该使用绝对路径:
[code="jsp"]<%=request.getContextPath()%>/image/xx.jpg[/code]

使用相对路径难免遇到你这种情况,
1、比如你把项目部署为Tomcat的根应用(将你的应用下的JSP、JS、CSS等资源和WEB-INF一股脑拷贝到Tomcat路径下的webapps\ROOT下就是部署为根应用)时,相对路径是“[color=red]../image/xx.jpg[/color]”
2、而如果是部署为一般应用(就是应用的目录或war包拷贝到webapps下面),相对路径就应该是“[color=red]../../image/xx.jpg[/color]”

所以应该使用绝对路径。

MyEclipse下可能就是相当于第一个情况,这要看你的具体配置了。

不建议这种相对路径
../image/xx.jpg
why 因为该地址默认是基于浏览器地址栏地址计算 如浏览器地址是http://s.com/c/a
则计算得到的是 http://s.com/c/images/xx.jpg 所以比如你在使用如servlet转发时可能出现问题 计算的不对

请使用根相对路径 如
${pageContext.request.contextPath}/aa/images/xx.jpg

右键点击下图片应该出现位置,查看属性,看下引用的位置,根据这个修改一下

一般../image/xx.jpg这种相对路径的写法用于css文件中,是根据css文件的路径计算的。

如果在html、jsp页面中,直接这样写,很容易出现找不到图片的问题。除非你确定没有其它转发请求,然后还要求你精确的写出相对的路径。基本上都是1楼所讲的加上表达式:${pageContext.request.contextPath}/来使用contextPath确定图片所在目录。