web应用的绝对路径和相对路径

经常写web工程,就会涉及很多路径问题,今天复习下绝对路径和相对路径,以提醒自己下次不要以为路径问题头疼。

1.绝对路径和相对路径

相对路径:helloworld  ./helloworld ../helloworld            这样的都是相对路径

绝对路径:/helloworld   /myweb/helloworld

2.相对路径相对谁

相对路径相对的是当前的url,怎么解释,例如:

当前url为http://localhost:8080/day/tijiao.html,看一下tijiao.html的源码:

<!DOCTYPE html>
<html>
<head>
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
    <title>提交一个数</title>
</head>
<body>
    <form action="path" method="post">
        请输入一个数字: <input type="text" name="number"/>
        <input type="submit" value="测试获得路径" />
    </form>
</body>
</html>

action写的是path,那么,提交后,就会把http://localhost:8080/day/tijiao.html链接中的tijiao.html替换为path变为http://localhost:8080/day/path,这就是所谓的相对于当前的url。

如果我们这样:

tijiao.html的源代码仍然是上面的,那么点击提交按钮后,会变成如下:

按照刚才那个原理,把最后一个tijiao.html换为path,那么就无法找到,所以404。

3.如何写绝对路径,对于客户端绝对路径中的/代表什么?

如果我们部署的工程名是/day,那么我们可以这样写html路径:

<form action="/day/path" method="post">  此时 / 代表服务器根目录 http://localhost:8080

4.jsp中怎样写?

由于我们部署服务器,可能叫不同的名,那么我们在代码中写死了/day这样很不好,那在jsp中如何写呢?

我们可以这样:

<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<html>
<head>
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
    <title>提交一个数</title>
</head>
<body>
<form action="<%=request.getContextPath()%>/path" method="post">
    请输入一个数字: <input type="text" name="number"/>
    <input type="submit" value="测试获得路径" />
</form>
</body>
</html>

<%=request.getContextPath()%>就可以获取部署的跟路径了。

5.客户端关于路径问题的通用结论:

html,jsp,js文件用里面用绝对路径

css内部使用的背景图片等用相对路径

时间: 2024-08-11 05:44:40

web应用的绝对路径和相对路径的相关文章

[原创]java WEB学习笔记35:java WEB 中关于绝对路径 和相对路径问题

本博客为原创:综合 尚硅谷(http://www.atguigu.com)的系统教程(深表感谢)和 网络上的现有资源(博客,文档,图书等),资源的出处我会标明 本博客的目的:①总结自己的学习过程,相当于学习笔记 ②将自己的经验分享给大家,相互学习,互相交流,不可商用 内容难免出现问题,欢迎指正,交流,探讨,可以留言,也可以通过以下方式联系. 本人互联网技术爱好者,互联网技术发烧友 微博:伊直都在0221 QQ:951226918 ---------------------------------

java(web)相对路径,绝对路径

1.定义 绝对路径:绝对路径就是你的主页上的文件或目录在硬盘上真正的路径,(URL和物理路径)例如:C:/xyz/test.txt 代表了test.txt文件的绝对路径.http://www.baidu.com/index.htm也代表了一个URL绝对路径. 相对路径:相对与某个基准目录的路径.包含Web的相对路径(HTML中的相对目录),例如:在Servlet中,"/"代表Web应用的根目录.和物理路径的相对表示.例如:"./" 代表当前目录,"../&

Asp.Net Core Web相对路径、绝对路径整理

一.相对路径 1.关于Asp.Net Core中的相对路径主要包括两个部分:一.Web根目录,即当前网站的目录为基础:二.内容目录wwwroot文件夹,对于静态文件都放在这个目录. 2.获取控制器,Action的路径 对于控制器.视图的链接生成,主要通过视图上下文.控制器上下文的Url对象 Url对象实现了IUrlHelper接口,主要功能是获取网站的相对目录,也可以将'~'发号开头的转换成相对目录. // // 摘要: // Defines the contract for the helpe

web中的相对路径与绝对路径

1.什么叫绝对路径 相对于WEB应用的跟路径的路径,即任何路径都必须带上contentPath. 2.javaEE中的/代表什么 代表WEB应用的跟路径(需交由Servlet容器处理) 请求转发时. web.xml文件中映射servlet访问路径 各种定制标签 代表站点的跟路径(交由浏览器来处理) 超链接 表达式中的action 做请求重定向的时候

web中的CSS、Xpath等路径定位方法学习

今天不到八点就到公司了,来的比较早,趁着有点时间,总结下web中的CSS.Xpath等路径定位定位的方式吧! 简单的介绍下xpath和css的定位 理论知识就不罗列了 还是利用博客园的首页.直接附上代码: 这个是xpath 1 #!/usr/bin/env python 2 # -*- coding: utf_8 -*- 3 4 from learn_webdriver import Webdriver 5 from selenium import webdriver 6 from seleni

web应用路径问题(相对路径,绝对路径,动态获取路径)

1.相对路径和绝对路径 绝对路径:以 " / " 开头的路径,是完整的路径. 相对路径:不以 " / " 开头的路径,是相对于当前web资源目录的路径. 在绝对路径中, " / " 的含义有两种解释: (1)如果是服务器端解析, " / " 代表相对于当前web应用的绝对路径,即:协议名://服务器名(主机地址):端口号/项目名/,例如:http://localhost:8080/MyTest/. (2)如果是浏览器端解析(出

如何修改myeclipse中web项目的工作路径或默认路径

如何修改myeclipse中web项目的工作路径或默认路径 博客分类: J2EE开发技术指南 安装好myeclipse后,第一次启动myeclipse时,都会弹出会弹出Workspace Launcher对话框,叫你设置myeclipse工作路径.通常我们设置完了后,为了以后打开时不会再弹出这个对话框,都会把“Use this as the default and do not ask again”这个选框勾选掉,免得以后麻烦.但是当工程项目较多时,我们又要把项目分开, 不让工作路径太大太复杂,

web项目中,视图层中关于相对路径和绝对路径

1.在jfinal项目中 因为一直使用的jfinal,没感觉路径问题. 举个栗子,项目名字叫做test.访问一个Controller的映射为/user/add.这样,在浏览器地址栏直接:localhost:8080/user/add就可以直接访问到add方法了.当然,这样需要通过配置不同的端口来发布不同的项目,不然肯定冲突了.端口指定项目的路径. 比如: <Host name="localhost" appBase="webapps" unpackWARs=&

关于Web工程的绝对路径和相对路径

参考自:https://blog.csdn.net/cuiyaoqiang/article/details/51336559 前言:在web开发中,我们常常会碰到关于路径跳转的问题,这里我们讨论绝对路径和相对路径的区别. 一.绝对路径 相对于当前Web应用根目录的路径,可以用内置对象获取,例如web工程下的主页的绝对路径为:http://localhost:8080/FirstWebDemo/index.jsp (EL表达式获得: <c:set var="basePath" va