在线精品99_中国九九盗摄偷拍偷看_91免费版在线观看_91.app_91高清视频在线_99热最新网站

java绝对路径及相对路径是怎样的

127次阅读
没有评论

共计 3496 个字符,预计需要花费 9 分钟才能阅读完成。

这期内容当中丸趣 TV 小编将会给大家带来有关 java 绝对路径及相对路径是怎样的,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。

1. 基本概念的理解

绝对路径:绝对路径就是你的主页上的文件或目录在硬盘上真正的路径,(URL 和物理路径)例如:
C:xyz est.txt 代表了 test.txt 文件的绝对路径。

相对路径:相对与某个基准目录的路径。包含 Web 的相对路径(HTML 中的相对目录),例如:在
Servlet 中,/ 代表 Web 应用的跟目录。和物理路径的相对表示。例如:./ 代表当前目录, ../ 代表上级目录。这种类似的表示,也是属于相对路径。

RFC 2396: Uniform Resource Identifiers (URI): Generic Syntax,

2. 关于 JSP/Servlet 中的相对路径和绝对路径。

2.1 服务器端的地址

服务器端的相对地址指的是相对于你的 web 应用的地址,这个地址是在服务器端解析的(不同于 html 和 javascript 中的相对地址,他们是由客户端浏览器解析的)也就是说这时候在 jsp 和 servlet 中的相对地址应该是相对于你的 web 应用。

其用到的地方有:
forward:servlet 中的 request.getRequestDispatcher(address); 这个 address 是在服务器端解析的,所以,你要 forward 到 a.jsp 应该这么写:request.getRequestDispatcher(“/user/a.jsp”)这个 / 相对于当前的 web 应用 webapp,其绝对地址就是:http://192.168.0.1/webapp/user/a.jsp。sendRedirect:在 jsp 中 %response.sendRedirect(/rtccp/user/a.jsp %

2.22、客户端的地址

所有的 html 页面中的相对地址都是相对于服务器根目录 (http://192.168.0.1/) 的,而不是 (跟目录下的该 Web 应用的目录) http://192.168.0.1/webapp/ 的。Html 中的 form 表单的 action 属性的地址应该是相对于服务器根目录(http://192.168.0.1/) 的,所以,如果提交到 a.jsp 为:action= /webapp/user/a.jsp 或 action= %=request.getContextPath()% /user/a.jsp;
提交到 servlet 为 actiom= /webapp/handleservlet Javascript 也是在客户端解析的,所以其相对路径和 form 表单一样。

因此,一般情况下,在 JSP/HTML 页面等引用的 CSS,Javascript.Action 等属性前面最好都加上
%=request.getContextPath()% , 以确保所引用的文件都属于 Web 应用中的目录。另外,应该尽量避免使用类似 . , ./ , ../../ 等类似的相对该文件位置的相对路径,这样当文件移动时,很容易出问题。

3. JSP/Servlet 中获得当前应用的相对路径和绝对路径

3.1 JSP 中获得当前应用的相对路径和绝对路径
根目录所对应的绝对路径:request.getRequestURI()
文件的绝对路径 :application.getRealPath(request.getRequestURI());
当前 web 应用的绝对路径 :application.getRealPath(/
取得请求文件的上层目录:new File(application.getRealPath(request.getRequestURI())).getParent()

3.2 Servlet 中获得当前应用的相对路径和绝对路径
根目录所对应的绝对路径:request.getServletPath();
文件的绝对路径 :request.getSession().getServletContext().getRealPath
(request.getRequestURI())
当前 web 应用的绝对路径 :servletConfig.getServletContext().getRealPath( /
(ServletContext 对象获得几种方式:
javax.servlet.http.HttpSession.getServletContext()
javax.servlet.jsp.PageContext.getServletContext()
javax.servlet.ServletConfig.getServletContext()
)

4.java 的 Class 中获得相对路径,绝对路径的方法

4.1 单独的 Java 类中获得绝对路径
根据 java.io.File 的 Doc 文挡,可知:
默认情况下 new File(/) 代表的目录为:System.getProperty(user.dir)。
一下程序获得执行类的当前路径  
 

package org.cheng.file; 

 

import java.io.File; 

 

public class FileTest { 

 public static void main(String[] args) throws Exception { 

 System.out.println(Thread.currentThread().getContextClassLoader().getResource()); 

 

 System.out.println(FileTest.class.getClassLoader().getResource()); 

 

 System.out.println(ClassLoader.getSystemResource()); 

 System.out.println(FileTest.class.getResource()); 

 System.out.println(FileTest.class.getResource( /));

  //Class 文件所在路径

 System.out.println(new File( /).getAbsolutePath()); 

 System.out.println(System.getProperty( user.dir)); 

 } 

4.2 服务器中的 Java 类获得当前路径(来自网络)

(1).Weblogic

WebApplication 的系统文件根目录是你的 weblogic 安装所在根目录。
例如:如果你的 weblogic 安装在 c:eaweblogic700…..
那么,你的文件根路径就是 c:.
所以,有两种方式能够让你访问你的服务器端的文件:
a. 使用绝对路径:
比如将你的参数文件放在 c:yourconfigyourconf.properties,
直接使用 new FileInputStream(yourconfig/yourconf.properties
b. 使用相对路径:
相对路径的根目录就是你的 webapplication 的根路径,即 WEB-INF 的上一级目录,将你的参数文件放

在 yourwebappyourconfigyourconf.properties,
这样使用:
new FileInputStream(./yourconfig/yourconf.properties
这两种方式均可,自己选择。

(2).Tomcat

在类中输出 System.getProperty(user.dir 显示的是 %Tomcat_Home%/bin

(3).Resin

不是你的 JSP 放的相对路径, 是 JSP 引擎执行这个 JSP 编译成 SERVLET
的路径为根. 比如用新建文件法测试 File f = new File(a.htm
这个 a.htm 在 resin 的安装目录下

(4). 如何读相对路径哪?

在 Java 文件中 getResource 或 getResourceAsStream 均可

例:getClass().getResourceAsStream(filePath);//filePath 可以是 /filename , 这里的 / 代表 web

发布根路径下 WEB-INF/classes

默认使用该方法的路径是:WEB-INF/classes。已经在 Tomcat 中测试。

5. 读取文件时的相对路径,避免硬编码和绝对路径的使用。

上述就是丸趣 TV 小编为大家分享的 java 绝对路径及相对路径是怎样的了,如果刚好有类似的疑惑,不妨参照上述分析进行理解。如果想知道更多相关知识,欢迎关注丸趣 TV 行业资讯频道。

正文完
 
丸趣
版权声明:本站原创文章,由 丸趣 2023-08-25发表,共计3496字。
转载说明:除特殊说明外本站除技术相关以外文章皆由网络搜集发布,转载请注明出处。
评论(没有评论)
主站蜘蛛池模板: 新婚人妻不戴套国产精品 | 91精品国 | 亚洲精品一区二区三区婷婷月 | 在线欧美日韩精品一区二区 | 久久亚洲中文字幕精品一区 | 亚洲成年人在线观看 | 成人免费区一区二区三区 | 欧美洲精品亚洲精品中文字幕 | 国产日产精品 | 亚洲性69影视 | 午夜精品一区二区三区免费视频 | 一级毛片牲交大片 | 国产精品黄在线观看免费软件 | 毛片网站免费在线观看 | 少妇厨房愉情理伦片免费 | 综合久久久久6亚洲综合 | 久久国产avjust麻豆 | 亚洲最大av一区二区三区 | 亚洲综合av一区二区三区不卡 | 久久99精品久久久久久牛牛影视 | 玖玖爱免费 | 久久久久久亚洲av无码精品专口 | 少妇做爰免费视频网站 | 精品人妻人人做人人爽夜夜爽 | 天天色天天草 | 无码区国产区在线播放 | 五月丁香综合激情六月久久 | 国产一区二区三区免费视频 | 人妻聚色窝窝人体www一区 | 无码毛片一区二区三区本码视频 | 真实偷清晰对白在线视频 | 欧日韩无套内射变态 | 亚洲人成网国产最新在线 | 麻豆精品| 亚洲经典自拍 | 国产成人精品白浆久久69 | 白嫩美女一级毛片免费看 | 99久久99视频| 黄网十三区 | 亚洲国产毛片aaaaa无费看 | 亚洲欧洲日产国码 最新 |