java 项目如何获取项目所在的物理根路径
例如:d:\myWorkspace\myproject\WebRoot怎么用代码获得这个路径?...
例如:d:\myWorkspace\myproject\WebRoot
怎么用代码获得这个路径? 展开
怎么用代码获得这个路径? 展开
3个回答
展开全部
在java中获得文件的路径在我们做上传文件操作时是不可避免的。web上运行1:this.getClass().getClassLoader().getResource("/").getPath();this.getClass().getClassLoader().getResource("").getPath();得到的是ClassPath的绝对URI路径。如:/D:/jboss-4.2.2.GA/server/default/deploy/hp.war/WEB-INF/classes/System.getProperty("user.dir");this.getClass().getClassLoader().getResource(".").getPath();得到的是项目的绝对路径。如:/D:/jboss-4.2.2.GA/server/default/deploy/hp.war2:this.getClass().getResource("/").getPath();this.getClass().getResource("").getPath();得到的是当前类文件的URI目录。如:/D:/jboss-4.2.2.GA/server/default/deploy/hp.war/WEB-INF/classes/com/jebel/helper/this.getClass().getResource(".").getPath();X不能运行3:Thread.currentThread().getContextClassLoader().getResource("/").getPath()Thread.currentThread().getContextClassLoader().getResource("").getPath()得到的是ClassPath的绝对URI路径。如:/D:/jboss-4.2.2.GA/server/default/deploy/hp.war/WEB-INF/classes/Thread.currentThread().getContextClassLoader().getResource(".").getPath()得到的是项目的绝对路径。如:/D:/jboss-4.2.2.GA/server/default/deploy/hp.war在本地运行中1:this.getClass().getClassLoader().getResource("").getPath();this.getClass().getClassLoader().getResource(".").getPath();得到的是ClassPath的绝对URI路径。如:/D:/myProjects/hp/WebRoot/猛悉WEB-INF/classesthis.getClass().getClassLoader().getResource("."枝胡乎).getPath();X不能运行2:this.getClass().getResource("").getPath();this.getClass().getResource(".").getPath();得到的是当前类文件的URI目录。如:/D:/myProjects/hp/WebRoot/WEB-INF/classes/com/jebel/helper//D:/myProjects/hp/WebRoot/WEB-INF/classes/得到的是ClassPath的绝对URI路径。如:/D:/myProjects/hp/WebRoot/WEB-INF/classes3:Thread.currentThread().getContextClassLoader().getResource(".").getPath()Thread.currentThread().getContextClassLoader().getResource("").getPath()得到的是ClassPath的绝对URI路做仔径。。如:/D:/myProjects/hp/WebRoot/WEB-INF/classesThread.currentThread().getContextClassLoader().getResource("/").getPath()X不能运行最后在Web应用程序中,我们一般通过ServletContext.getRealPath("/")方法得到Web应用程序的根目录的绝对路径。还有request.getContextPath();在Weblogic中要用request.getServletContext().getContextPath();但如果打包成war部署到Weblogic服务器,项目内部并没有文件结构的概念,用这种方式是始终得到null,获取不到路径,目前还没有找到具体的解决方案。
2017-06-08
展开全部
request.getSession().getServletContext().getRealPath("/")
更多追问追答
追问
这个是发布后在tomcat的路径
追答
你需要没发布之前的路径,这个得你自己记住了吧?
还是说你要运行本地应用,获取本地项目路径?
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
2017-06-08
展开全部
不懂这个题啊
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询