日期:2014-05-17  浏览次数:20712 次

jsp中的相对路径问题
jsp内使用相对路径引用图片。两天了都没弄好,很纠结
目录
jsp文件代码
浏览器显示
------解决方案--------------------
../../images/xxx
------解决方案--------------------
引用:
Quote: 引用:

/sortAsc.gif
  “/”是绝对路径

相对的
------解决方案--------------------
怎么不用<%=path%>/gg/page/entityList/sortAsc.gif
/sortAsc.gif  确实是相对路径,在同级目录下寻找sortAsc.gif 这张图片
------解决方案--------------------
建议用绝对路径。
一般项目里的图片都放在一个固定的文件夹下的,这样管理起来比较方便,然后你就可以用绝对路径来访问了。。比如<%projectPath%>/image/xxx.gif
------解决方案--------------------
相对路径有时候目录多的话可读性太差,一堆的".",建议用绝对路径,不过别写死了,${pageContext.request.contextPath} ,项目改名,挪地儿都没问题了
------解决方案--------------------
引用:
Quote: 引用:

你的jsp是从其他地方转发过来的吗,比如从servlet或者action转发到jsp,如果这样的话相对路径应该是相对于那个servlet或action的路径,不是相对于那个jsp的
谢谢你,我郁闷了好几天的问题终于知道是什么原因导致的了。我所遇到的问题确实是你说的那样是从action转来的。问题1):从action转来的是不是就不能使用相对路径?
问题2)我之所以想使用相对路径是因为,我在做一个jquery插件,这个插件需要图片,为了使插件可以更方便的在不同的项目中使用因此想到相对路径,看来使用相对路径是行不通了。为了更方便的使用js插件,在js文件的第一行有var xxxPluginRoot=“插件的目录”(这样在不同的项目中只需要修改这一行就可以使用了)。不知道有没有更好的办法?
第一个问题,因为是从其他地方转发过来的,所以url还是上一个url,不是jsp的,所以这样在客户端也就是浏览器上执行的代码(包括html css  js),他们在执行的时候都会去相对于url去找对应路径下的文件,所以用绝对路径方便,不用考虑这些问题,但是我感觉这个问题既然你已经懂了那用相对路径也没什么的,效果做出来就ok了。至于第二个问题,我没做过,不知道怎么解决更好。
------解决方案--------------------
我也遇到过这样的问题,我在WebContent下新建了image文件夹用来放置图片,在WEB-INF中有个外部的样式css,background-image: url("image/12009.jpg");希望能帮到你