我想获得url的绝对路径。例如,http://localhost:8080会给我根目录下的tomcat主页。如何通过在java中提供url http://localhost:8080来获得tomcat根目录的绝对路径。我如何获得在java中提供url的绝对路径
我发现了类似的问题,但没有找到满意的答案,所以我在这里发布问题。
我想获得url的绝对路径。例如,http://localhost:8080会给我根目录下的tomcat主页。如何通过在java中提供url http://localhost:8080来获得tomcat根目录的绝对路径。我如何获得在java中提供url的绝对路径
我发现了类似的问题,但没有找到满意的答案,所以我在这里发布问题。
您可以使用javax.servlet.ServletContext.getRealPath(java.lang.String)
,虽然有些情况下它不起作用。
获取对应于给定虚拟路径真正路径。
例如,如果
path
等于/index.html
,此方法将返回在服务器的文件系统中的绝对文件路径,其形式http://<host>:<port>/<contextPath>/index.html
的请求将被映射,其中<contextPath>
对应于此的ServletContext的上下文路径。返回的真实路径将采用适合运行servlet容器的计算机和操作系统的形式,包括正确的路径分隔符。
只有在容器已从其包含的JAR文件中解压缩应用程序的
/WEB-INF/lib
目录中的/META-INF/resources
目录中的JAR文件目录中的资源时,才会考虑必须返回解包位置的路径。如果servlet容器无法将给定虚拟路径转换为真实路径,则此方法返回null。
参数:
路径 - 虚拟路径将被转换为真实路径返回:
真实路径,或NULL,如果转换无法执行
你不能这样做! – adarshr 2012-04-21 12:39:17