项目在tomcat部署后,如何获取项目的根目录

项目在tomcat部署后,如何获取项目的根目录,第1张

实现思路就是先获取到类路径,之后再类路径中截取出相应的项目根路径(因为是知道类和项目的相对位置的)。

可以通过“ 类名classgetResource("")getPath()”方法实现获取到当前的路径。

举例:”String path = XMLSclassgetResource("")getPath()“

解释:以上语句就是获取到XMLS编译后的绝对路径(无法获取到java文件路径的,因为java运行的都是class文件),之后根据实际情况截取任意位置的路径都可以。

一 相对路径的获得

说明:相对路径(即不写明时候到底相对谁)均可通过以下方式获得(不论是一般的java项目还是web项目)

String relativelyPath=SystemgetProperty("userdir");

上述相对路径中,java项目中的文件是相对于项目的根目录

web项目中的文件路径视不同的web服务器不同而不同(tomcat是相对于 tomcat安装目录\bin)

二 类加载目录的获得(即当运行时某一类时获得其装载目录)

11)通用的方法一(不论是一般的java项目还是web项目,先定位到能看到包路径的第一级目录)

InputStream is=TestActionclassgetClassLoader()getResourceAsStream("testtxt");

(testtxt文件的路径为 项目名\src\testtxt;类TestAction所在包的第一级目录位于src目录下)

上式中将TestAction,testtxt替换成对应成相应的类名和文件名字即可

12)通用方法二 (此方法和11中的方法类似,不同的是此方法必须以'/'开头,参考>

在servlet中,可以通过以下方法获取项目的绝对路径:

使用ServletContext对象的getRealPath()方法:

String path = getServletContext()getRealPath("/");

使用类加载器的getResource()方法:

String path = getClass()getClassLoader()getResource("")getPath();

以上两种方法都可以获取到项目的绝对路径,但是第一种方法需要传入相对路径作为参数,而第二种方法则不需要。

以上就是关于项目在tomcat部署后,如何获取项目的根目录全部的内容,包括:项目在tomcat部署后,如何获取项目的根目录、在java类中怎么获得java项目的目录、servlet中如何得到项目的绝对路径等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/web/9607812.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-04-30
下一篇2023-04-30

发表评论

登录后才能评论

评论列表(0条)

    保存