`
lixucheng
  • 浏览: 79796 次
  • 性别: Icon_minigender_1
  • 来自: 大连
社区版块
存档分类
最新评论

Java Web实践专题——访问路径问题

阅读更多
Web应用是由大量的文件组成的,系统等运行主要是靠文件之间的相互调用来完成,调用就是根据文件的位置来确定的。如果你在访问某个文件的时候,系统报下面这样的错误,如果你的文件名没有写错,就是路径出错了。
为了说明路径问题,我们假设有以下的文档结构:
这是JBuilder2006下的一个截图,应用的名字是filepathweb,有两个文件夹,aa和bb,其中aa下有a_a.jsp和a_b.jsp两个文件,bb下有b_a.jsp文件。
绝对路径
Web文件访问的基本格式如下:
协议://主机:端口/应用名/文件夹名/文件
协议:这里应该是http协议;
主机:是运行Web应用的服务器的地址,可以使用主机名(或者域名),可以使用IP地址,如果是本机的话,可以使用虚拟IP地址(127.0.0.1),可以使用机器名。
端口:Web服务器运行时候所使用的端口,每个服务器程序都会有端口。对于Web应用来说,默认的端口是80。
应用名:在同一个应用服务器上可能运行多个Web应用,这是允许的,我们在访问某个应用的时候,需要指定所访问的Web应用,这个路径通常是Web应用文件夹的名字,但是可以配置成其它的。应用的配置参见Web应用部署相关内容。
文件夹名:在同一个Web应用中可能会根据不同的功能创建不同的文件夹来存放不同功能模块的文件,为了访问这个文件,必须指定它所在的文件夹。
文件:要访问的jsp文件。
需要注意的是文件夹名和文件名共同确定了这个文件,相当于文件的完整路径。对于Servlet的访问,使用的不是文件名,而是在web.xml中配置的路径,可以参加Servlet部分内容。
例:如何访问上面的Web应用的中的a_a.jsp文件,假设在本机上访问,使用的端口是8083,部署的时候使用的应用的名字就是filepathweb。
路径应该这样写:
http://127.0.01:8083/filepathweb/aa/a_a.jsp
或者
http://localhost:8083/filepathweb/aa/a_a.jsp
需要解释几个问题:
(1)有人说,上网的时候从来不需要输入端口,原因是使用了默认端口,Web应用的默认端口是80。
(2)有人说,从来也不需要输入应用的名字,原因是设置了默认应用,关于默认应用请参考本书中的其它相关内容。
(3)有人说,也不需要输入要访问的文件名,原因是设置了欢迎网页,在web.xml中设置的,关于这部分内容,请参考本书中其它相关内容。
相对路径
上面介绍了对于某个文件的访问方式,这里的访问方式叫绝对路径,也就是我们使用完整的路径,在web应用的文件相互访问的时候,除了可以使用绝对路径,还可以使用相对路径。例如,我们要在a_a.jsp文件中访问a_b.jsp,直接写绝对路径肯定没有问题,但是写起来不方便,另外如果部署的时候Web应用的名字发生变化了,访问的路径都需要改变,所以我们应该使用相对路径。
相对路径有两种情况:第一种,相对于当前文件的位置;第二种,相对于应用的位置。
相对路径在使用的时候需要知道以下知识:
(1)当前路径是“.”,表示当前路径。
(2)上一级路径是“..”,要访问上一级文件夹,就需要写“./../”。
(3)相对于应用的路径直接写“/”。
根据上面的情况在a_a.jsp文件中访问a_b.jsp有以下3种方式(通过超链的方式):
<a href="a_b.jsp">a_b.jsp</a><br>
<a href="http://localhost:8083/filepathweb/aa/a_b.jsp">a_b.jsp</a><br>
<a href="/filepathweb/aa/a_b.jsp">a_b.jsp</a><br>
第一种情况,就是相对路径,因为a_a.jsp和a_b.jsp在同一个文件夹,所以直接写a_b.jsp,系统会在a_a.jsp所在的文件夹查找a_b.jsp,使用的相对于当前文件的路径。
第二种情况,使用了绝对路径,就是前面介绍过的。
第三种情况,使用了应用的位置信息,然后只要写在应用中的位置就可以了。
这是访问同一个文件的情况,如果要访问不同文件夹的文件怎样办呢?例如,要在a_a.jsp中访问bb文件夹中的b_a.jsp。
对于bb中的b_a.jsp的访问,上面使用的3种方法中的第二种和第三种同样可以直接使用,但是相对于当前文件的路径比较麻烦,下面是在a_a.jsp中访问b_a.jsp的3种方式:
<a href="./../bb/b_a.jsp">a_b.jsp</a><br>
<a href="http://localhost:8083/testweb/bb/b_a.jsp">a_b.jsp</a><br>
<a href="/testweb/bb/b_a.jsp">a_b.jsp</a><br>
需要说明的是相对于路径,如果当前文件夹比较深,可以多次使用“../”,“./”表示当前文件夹。
这里介绍了文件访问相关的路径问题,关于Servlet与JSP的访问路径问题,我们在Servlet部分介绍。
分享到:
评论
2 楼 jackroomage 2011-07-19  
看错了,你写的没有问题。sorry!!!
1 楼 jackroomage 2011-07-18  
<a href="./../bb/b_a.jsp">a_b.jsp</a><br>  这句话好像不行吧!

相关推荐

    李兴华Java Web开发实战经典.pdf (高清版) Part1

    MLDN 李兴华 Java Web 开发实战经典.pdf (高清版) 全书分为两部分,需 要全部下载下载一起解压,此部分为第一部分 带有书签,清华大学出版社 第1章 JAVA WEB开发简介 1.1、WEB发展历程 1.2、企业开发架构 ...

    PHPWeb开发技术指南——pdf格式

    4.1.4 动态路径 96 4.1.5 DNS技巧 98 4.1.6 实际应用中的折衷方案 99 4.1.7 PHP的内嵌“会话”库 100 4.2 安全性考虑 106 4.2.1 不要信任Web 107 4.2.2 不要重新发明加密法 111 4.2.3 开发组需要资深人员 118 4.2.4 ...

    李兴华Java Web开发实战经典(高清版) Part2

    MLDN 李兴华 Java Web 开发实战经典.pdf (高清版) 全书分为两部分,需 要全部下载下载一起解压,此部分为第二部分 带有书签,清华大学出版社 第1章 JAVA WEB开发简介 1.1、WEB发展历程 1.2、企业开发架构 ...

    MLDN+李兴华+Java+Web开发实战经典.part3.rar )

    MLDN 李兴华 Java Web 开发实战经典.pdf (高清版) 带有书签,清华大学出版社 第1章 JAVA WEB开发简介 1.1、WEB发展历程 1.2、企业开发架构 1.3、JAVA EE架构 1.4、JAVA EE核心设计模式 1.5、Struts开发...

    李兴华 Java Web 开发实战经典_带源码_高清pdf 带书签 上

    第1章 JAVA WEB开发简介 1.1、WEB发展历程 1.2、企业开发架构 1.3、JAVA EE架构 1.4、JAVA EE核心设计模式 1.5、Struts开发框架 1.6、本章摘要 1.7、开发实战讲解 第2章 HTML、JavaScript简介 2.1、服务器...

    Visual C++实践与提高-COM和COM+篇『PDF』

    10.3.2 在ActiveX控件中访问DOM——例程DOMSamp 10.3.3 测试DOMCtrl控件 10.4 活动服务器组件 10.4.1 活动服务器页面(ASP) 10.4.2 ASP内建对象 10.4.2.1 Application对象 10.4.2.2 Session对象 10.4.2.3 Request...

    java源码包---java 源码 大量 实例

     util实现Java图片水印添加功能,有添加图片水印和文字水印,可以设置水印位置,透明度、设置对线段锯齿状边缘处理、水印图片的路径,水印一般格式是gif,png,这种图片可以设置透明度、水印旋转等,可以参考代码...

    java web 视频、电子书、源码(李兴华老师出版)

    MLDN 李兴华 Java Web 开发实战经典.pdf (高清版) 第1章 JAVA WEB开发简介 1.1、WEB发展历程 1.2、企业开发架构 1.3、JAVA EE架构 1.4、JAVA EE核心设计模式 1.5、Struts开发框架 1.6、本章摘要 1.7、...

    JAVA上百实例源码以及开源项目源代码

     util实现Java图片水印添加功能,有添加图片水印和文字水印,可以设置水印位置,透明度、设置对线段锯齿状边缘处理、水印图片的路径,水印一般格式是gif,png,这种图片可以设置透明度、水印旋转等,可以参考代码...

    JAVA上百实例源码以及开源项目

     util实现Java图片水印添加功能,有添加图片水印和文字水印,可以设置水印位置,透明度、设置对线段锯齿状边缘处理、水印图片的路径,水印一般格式是gif,png,这种图片可以设置透明度、水印旋转等,可以参考代码...

    java源码包4

     util实现Java图片水印添加功能,有添加图片水印和文字水印,可以设置水印位置,透明度、设置对线段锯齿状边缘处理、水印图片的路径,水印一般格式是gif,png,这种图片可以设置透明度、水印旋转等,可以参考代码...

    java源码包3

     util实现Java图片水印添加功能,有添加图片水印和文字水印,可以设置水印位置,透明度、设置对线段锯齿状边缘处理、水印图片的路径,水印一般格式是gif,png,这种图片可以设置透明度、水印旋转等,可以参考代码...

    java源码包2

     util实现Java图片水印添加功能,有添加图片水印和文字水印,可以设置水印位置,透明度、设置对线段锯齿状边缘处理、水印图片的路径,水印一般格式是gif,png,这种图片可以设置透明度、水印旋转等,可以参考代码...

    李兴华 Java Web 开发实战经典 高清扫描版Part3

    第1章 JAVA WEB开发简介 1.1、WEB发展历程 1.2、企业开发架构 1.3、JAVA EE架构 1.4、JAVA EE核心设计模式 1.5、Struts开发框架 1.6、本章摘要 1.7、开发实战讲解 第2章 HTML、JavaScript简介 2.1、服务器...

    成百上千个Java 源码DEMO 4(1-4是独立压缩包)

    Java局域网通信——飞鸽传书源代码 28个目标文件 内容索引:JAVA源码,媒体网络,飞鸽传书 Java局域网通信——飞鸽传书源代码,大家都知道VB版、VC版还有Delphi版的飞鸽传书软件,但是Java版的确实不多,因此这个Java...

    李兴华 Java Web 开发实战经典_带源码_高清pdf 带书签 下

    第1章 JAVA WEB开发简介 1.1、WEB发展历程 1.2、企业开发架构 1.3、JAVA EE架构 1.4、JAVA EE核心设计模式 1.5、Struts开发框架 1.6、本章摘要 1.7、开发实战讲解 第2章 HTML、JavaScript简介 2.1、服务器...

    李兴华 java_web开发实战经典 源码 完整版收集共享

    第1章 JAVA WEB开发简介 1.1、WEB发展历程 1.2、企业开发架构 1.3、JAVA EE架构 1.4、JAVA EE核心设计模式 1.5、Struts开发框架 1.6、本章摘要 1.7、开发实战讲解 第2章 HTML、JavaScript简介 2.1、服务器...

    成百上千个Java 源码DEMO 3(1-4是独立压缩包)

    Java局域网通信——飞鸽传书源代码 28个目标文件 内容索引:JAVA源码,媒体网络,飞鸽传书 Java局域网通信——飞鸽传书源代码,大家都知道VB版、VC版还有Delphi版的飞鸽传书软件,但是Java版的确实不多,因此这个Java...

    JAVA程序开发大全---上半部分

    14.2.5 使用Java客户端访问Web Service 251 14.3 向现有Web项目加入Web Service功能 252 14.4 创建直接调用Internet中的Web Service的客户端 252 14.4.1 创建客户端WeatherWSClient项目 253 14.4.2 使用WSDL生成...

Global site tag (gtag.js) - Google Analytics