免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 1501 | 回复: 0
打印 上一主题 下一主题

JSP的相对目录 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2009-10-16 12:54 |只看该作者 |倒序浏览
1.最近在写PHP程序的时候总是被PHP里面的文件目录搞不清楚。include的时候总有不爽的时候。
看看JSP的处理
  • %  
  • String path = request.getContextPath();  
  • String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";  
  • %>  
  • base href="basePath%>">  
    这说明在该页面中的所有路径都是于项目的WebRoot为相对路径,如项目的WebRoot下的Images/xxx.jpg,则在任何含有
    的页面中都是以Images/xxx.jpg来访问该图片。如WebRoot/jsp/first.jsp
    在first.jsp中含有xxx.jpg应该为
    Html代码
  • img src="Images/xxx.jpg"/>  

    而不是
    Html代码
  • img src="../Images/xxx.jpg"/>  

    好处:
          1.不需要在页面中以../或../../来回到上级或上上级目录
          2.都是相对于WebRoot目录,实现了路径的统一
    切记:
      1. 整个页面的相对路径是:http://localhost:8002/url/ 即项目的根目录
      2. 比如我现在要引入一个其他的文件的话不用再去写../../这样的了!直接写相对这个根的位置即可!
        看到没有
    这表示我们的图片是相对于上面的绝对路径的位置是这个的!
    如果你想写   这样的相对路径的话呢
    你就得将这个基本的目录去掉 base href="basePath%>">  去掉了!
    不过我的方案是 :CSS、JS、IMAGES都是走静态域名所以都是使用了绝对目录!
    好像这个东西不能处理include 哦。我测试发现使用
    结果找不到了
    还得使用
    这样的。难道说这个东西只会影响到静态文件的引入。
    哦我发现a 标签也会受到其影响哦!
    总结:
    base标记是一个基链接标记,是一个单标记(此标签不需要关闭)。用以改变文件中所有连结标记的参数内定值。它只能应用于标记与之间。
    你网页上的所有相对路径在链接时都将在前面加上基链接指向的地址。
    会受影响的包括:
    图片<img src
    声音文件、FLASH、等
    JS文件、CSS文件的引入路径
    页面的HREF即超链接受影响
    但是对JSP的代码不会有什么影响的!
    以后如果在写JSP页面的时候是可以非常好地去参考这个哦!
    延伸到PHP里面:
                   
                   
                   

    本文来自ChinaUnix博客,如果查看原文请点:http://blog.chinaunix.net/u2/84280/showart_2071660.html
  • 您需要登录后才可以回帖 登录 | 注册

    本版积分规则 发表回复

      

    北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
    未成年举报专区
    中国互联网协会会员  联系我们:huangweiwei@itpub.net
    感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

    清除 Cookies - ChinaUnix - Archiver - WAP - TOP