当前位置:首页 » 网页前端 » javaweb相对路径
扩展阅读
webinf下怎么引入js 2023-08-31 21:54:13
堡垒机怎么打开web 2023-08-31 21:54:11

javaweb相对路径

发布时间: 2022-05-15 15:33:47

㈠ java web中读取文件,相对路径怎么写

相对路径的话,可以先获取到当前文件的编译路径,之后在找到想找文件的路径的思路来实现。
举例:
XMLS.class.getClass().getResourceAsStream("/test/test.txt");
解释:XMLS.class.getClass()是获取当前的类编译路径,之后通过getResourceAsStream的形式即可找到要读取的文件的路径。
备注:这个方法中后面的路径也可以通过截取的形式来进行路径获取,实现原理都是找到当前类路径,之后通过相对位置找到另外文件路径。

㈡ java web项目关于路径方面的问题

1
所谓的根目录指的是/blog
还是
/WebRoot
答:在你项目已经发布后,/blog和/WebRoot是一样的。指的是同一个目录,在项目工程发布后,就没有/WebRoot这个目录了,只有/blog目录,这个目录下边的内容就是/WebRoot下边的内容。
2
转发resuest.getRequestDispatcher("这里的相对路径是什么").forward(request,response);
答:这里的相对路径是带/的路径,是从当前应用开始的路径,也就是从根目录开始的路径。浏览器地址栏不变。
3
重定向response.sendRedirect("这里的相对路径是什么");
答:这里的相对路径是带/的路径,是从当前应用开始的路径,也就是从根目录开始的路径。浏览器地址栏会变,相当于两次请求。

㈢ 如何在java web项目中获得相对路径

第一步: 先获得classpath路径

Stringclasspath=this.getClass().getResource("/").getPath().replaceFirst("/","");

这样子可以得到classpath路径,类似于:

F:/projects/JavaStudyParent/study-springmvc-junit-test/target/springmvc-junit-test/WEB-INF/classes/


然后把WEB-INF/classes截取就能获得WebAPP目录啦:

StringwebappRoot=classpath.replaceAll("WEB-INF/classes/","");

得到的结果就是:

F:/projects/JavaStudyParent/study-springmvc-junit-test/target/springmvc-junit-test/


通过这个路径你就能获取该文件夹下的所有文件啦

㈣ java里绝对路径和相对路径的区别是什么

按照jdk Doc上的说法”绝对路径名是完整的路径名,不需要任何其他信息就可以定位自身表示的文件。相反,相对路径名必须使用来自其他路径名的信息进行解释。默认情况下,java.io 包中的类总是根据当前用户目录来分析相对路径名。此目录由系统属性 user.dir 指定,通常是 Java 虚拟机的调用目录.”

相对路径顾名思义,相对于某个路径,那么究竟相对于什么路径我们必须弄明白.按照上面jdk文档上讲的这个路径是”当前用户目录”也就是”java虚拟机的调用目录”.更明白的说这个路径其实是我们在哪里调用jvm的路径.举个例子:

假设有一java源文件Example.java在d盘根目录下,该文件不含package信息.我们进入命令行窗口,然后使用”d:”命令切换到d盘根目录下,然后用”javac Example.java”来编译此文件,编译无错后,会在d盘根目录下自动生成”Example.class”文件.我们在调用”java Example”来运行该程序.此时我们已经启动了一个jvm,这个jvm是在d盘根目录下被启动的,所以此jvm所加载的程序中File类的相对路径也就是相对这个路径的,即d盘根目录:D:/.同时” 当前用户目录”也是D:/.在System.getProperty(“user.dir”);系统变量”user.dir”存放的也是这个值.
我们可以多做几次试验,把”Example.class”移动到不同路径下,同时在那些路径下,执行”java Example”命令启动jvm,我们会发现这个”当前用户目录”是不断变化的,它的路径始终和我们在哪启动jvm的路径是一致的.
搞清了这些,我们可以使用相对路径来创建文件,例如:
File file = new File(“a.txt”);
File.createNewFile();
假设jvm是在”D:/”下启动的,那么a.txt就会生成在D:/a.txt;
此外,这个参数还可以使用一些常用的路径表示方法,例如”.”或”./”代表当前目录,这个目录也就是jvm启动路径.所以如下代码能得到当前目录完整路径:
File f = new File(“.”);
String absolutePath = f.getAbsolutePath();
System.out.println(absolutePath);//D:/
最后要说说在eclipse中的情况:
Eclipse中启动jvm都是在项目根路径上启动的.比如有个项目名为blog,其完整路径为:D:/work/IDE/workspace/blog.那么这个路径就是jvm的启动路径了.所以以上代码如果在eclipse里运行,则输出结果为” D:/work/IDE/workspace/blog.”

Tomcat中的情况.
如果在tomcat中运行web应用,此时,如果我们在某个类中使用如下代码:
File f = new File(“.”);
String absolutePath = f.getAbsolutePath();
System.out.println(absolutePath);
那么输出的将是tomcat下的bin目录.我的机器就是” D:/work/server/jakarta-tomcat-5.0.28/bin/.”,由此可以看出tomcat服务器是在bin目录下启动jvm的.其实是在bin目录下的” catalina.bat”文件中启动jvm的.

㈤ Java Web项目的相对路径问题

我是这么弄的
String realPath = request.getSession().getServletContext()
.getRealPath("\\");// 项目磁盘路径
再在后面加上你想要的路径

祝你顺利!

㈥ javaweb中什么时候使用绝对路径,什么时候用相对路径

就我的经验来说,没有什么绝对的情况,想用什么就用什么。一般相对路径,写得少嘛。或者你不想把所有的路径暴露出来,那就用相对路经吧。有时候,发现路径不识别的时候,我就会两种路径都写写,去尝试一下哪种对。

㈦ javaweb相对路径怎么写

相对路径当然是相对的了
如果你的项目发布的时候是有项目名的如:http://localhost:8080/IExchange
那么相对路径就这么写/IExchange/files/common
如果你是不带项目名的配置 比如:http://localhost:8080/
就这么写 /files/common
要活学活用啊.

㈧ java绝对路径和相对路径的区别

1.基本概念的理解

绝对路径:绝对路径就是你的主页上的文件或目录在硬盘上真正的路径,(URL和物理路径)例如:
C:\xyz\test.txt 代表了test.txt文件的绝对路径。http://www.sun.com/index.htm也代表了一个
URL绝对路径。

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

㈨ java web项目 相对路径怎么写

servlet里面通过String basePath=session.getServletContext().getRealPath("/");获取webRoot目录真实路径。
比如d:\tomcat 6\webapps\项目名
webRoot下面的resources目录通过File path = new File(basePath, "resources");获取
其它同理

如果是jsp的话,获取resources目录直接通过“<%=request.getContextPath()%>/resources”获取