woaidongmao

文章均收录自他人博客,但不喜标题前加-[转贴],因其丑陋,见谅!~
随笔 - 1469, 文章 - 0, 评论 - 661, 引用 - 0
数据加载中……

关于路径前加于不加(/)反斜杠

如题,这是我们今天做关于JavaWeb请求转发时遇到的问题。

    虽然昨天也提前做了相关方面的了解,如下:

   1.(无)开头表示当前目录下的
    2.
/)开头的目录表示该目录为根目录的一个子目录
    3.
./)开头的目录表示该目录为当前目录(当前目录所在的目录)的一个子目录
    4.
../)开头的目录表示该目录为当前目录的父目录

    但是实际使用过程中我们发现了很多问题,首先关于无反斜杠开头的路径描述基本准确,是表示当前目录下和(./)相似。问题主要集中在关于加了反斜杠(/)的路径上。这里对于根目录的理解,我们遇到的情况主要可分为下面3种:

    1.对于HTML 页面,如果我们在其中有关于反斜杠应用的路径,我们可以分为下面两种情况:

       如直接对该页面打开访问:则这里相对的是我们的盘符,如(/res/index.html),实际路径为(C://res/index.html);

       如我们在Tomcat中构建打开:则这里相对的是我们的站点,如(/webTest/html/index.html),实际路径为(http://localhost:8080/webTest/html/index.html);

    2.对于我们在请求转发中调用的getRequestDispatcher()方法:则这里相对的是我们的项目根目录,如 request.getRequestDispatcher("/ts.do"),实际路径为,如我们项目名称为webTest,“/ts.do”是我们在web.XML中配置的servlet-mappingurl-pattern则我们这里找的该(/ts.do)其实是(http://localhost:8080/webTest/ts.do)。而如果我们要找的是一个具体资源如html页面:目录结构如下:(webTest/WebContent/html/index.html)而我们知道webContent这个目录是编译器临时目录在实际生成时是没有的。所以目录修改如下(webTest/html/index.html)这时我们要用getRequestDispatcher()得到这个html页面则应是(html/index.html)。

    这就是今天主要关于目录加反斜杠的难点,主要是对资源的定位问题。

 

posted on 2011-06-22 21:03 肥仔 阅读(1527) 评论(1)  编辑 收藏 引用 所属分类: HTTP & URL

评论

# re: 关于路径前加于不加(/)反斜杠  回复  更多评论   

似乎都加了/的
2013-08-02 11:41 | yupiao

只有注册用户登录后才能发表评论。
网站导航: 博客园   IT新闻   BlogJava   知识库   博问   管理