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

  如题,这是我们今天做关于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-mapping的url-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)。

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




------------------------------------------------------------------------------------------------------------

加“/”是代表绝对路径,不加“/”是代表相对路径

HTML绝对路径(absolute path)在网页制作中指带域名的文件的完整路径。

HTML相对路径(Relative Path)同一个目录的文件引用如果源文件和引用文件在同一个目录里,直接写引用文件名即可。


下面用示例来说明一下绝对路径相对路径

  • 绝对路径:

假设有个域名www.xxx.com,并申请了虚拟主机,虚拟主机有一个目录,比如www,这个www就是网站的根目录。

根目录下放了一个文件index.html,这个文件的绝对路径是: http://www.xxx.com/index.html

假设在www根目录下建了一个目录叫function,然后在该目录下放了一个文件info.html,这个文件的绝对路径就是http://www.xxx.com/function/info.html。

  • 相对路径

假设:info.html路径是:d:/web/www/function/info.html

   index.html路径是:d:/web/www/index.html

写法:<a href = "index.html">这是超连接</a>

 

上级目录

../表示源文件所在目录的上一级目录

假设:info.html路径是:d:/web/www/function/info.html

   index.html路径是:d:/web/www/index.html

写法:<a href = "../index.html">这是超连接</a>

 

上上级目录

假设:info.html路径是:d:/web/www/function/inc/info.html

   index.html路径是:d:/web/www/index.html

写法:<a href = "../function/inc/info.html">info.html</a>

 

下级目录

引用下级目录的文件,直接写下级目录文件的路径即可。

假设:info.html路径是:d:/web/www/function/info.html

   index.html路径是:d:/web/www/index.html

写法:<a href = "function/info.html">这是超连接</a>.


  • 3
    点赞
  • 32
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
文件路径边加/和不加/的区别在于路径的解析方式不同。当路径边加/时,表示绝对路径,即从站点的根目录开始找。例如,如果站点的根目录是http://localhost:8080/,那么加/的路径会从这个根目录开始找。而当路径不加/时,表示相对路径,即从当路径开始找。例如,如果当路径是http://localhost:8080/demo/,那么不加/的路径会从这个当路径开始找。\[1\]\[3\] 举个例子来说,假设有一个文件路径是/css/bootstrap.min.css。如果这个路径边加/,即变成了/css/bootstrap.min.css,那么它会从站点的根目录开始找,最终的路径是http://localhost:8080/css/bootstrap.min.css。而如果这个路径不加/,即仍然是/css/bootstrap.min.css,那么它会从当路径开始找,最终的路径是http://localhost:8080/demo/css/bootstrap.min.css。\[3\] 所以,加/和不加/的区别在于路径的起始点不同,一个是从站点的根目录开始找,一个是从当路径开始找。这会影响到最终解析出来的路径。\[1\]\[3\] #### 引用[.reference_title] - *1* [springmvc中关于相对路径不加斜杠‘/’的区别](https://blog.csdn.net/qq_52740442/article/details/118271337)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^insert_down1,239^v3^insert_chatgpt"}} ] [.reference_item] - *2* [网址 URL 路径斜杠“/”和不加的区别](https://blog.csdn.net/qq_35129986/article/details/103457244)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^insert_down1,239^v3^insert_chatgpt"}} ] [.reference_item] - *3* [URL路径加“/“和不加“/“的区别?](https://blog.csdn.net/qq_37205350/article/details/109078492)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^insert_down1,239^v3^insert_chatgpt"}} ] [.reference_item] [ .reference_list ]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值