開心生活站

位置:首頁 > 綜合知識 > 

javasrc路徑怎麼寫

1. java中獲取src的路徑怎麼寫

在java中獲得文件的路徑在我們做上傳文件操作時是不可避免的。

javasrc路徑怎麼寫

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,獲取不到路徑,目前還沒有找到具體的解決方案。

2. Java:一個xml文件和src同級,應該如何寫路徑呢

如果是用myeclipse的話(其它沒試過),new File(".").getAbsolutePath(),你會發現它就是你的工程目錄,src,xml都在這個目錄下,那麼xml自然就是 new File(xmlName)了。不過你做好的java程序肯定不能指望人家也用myeclipse來運行。。,所以給出兩個建義,

一。你仍然是new File(xmlName)來用這個xml,但是等你發佈做好的程序時,比如打成jar包,新個文件夾,比如test,把jar包和xml都放在裏面(即改成xml和jar包同級),這時你在test下執行jar包後,new File(xmlName)仍然是這個xml

二。把xml放到src目錄下,這時你獲取這個xml的輸入流就得這麼搞(Test類在哪個包無所謂)

InputStream input = Test.class.getClassLoader().getResourceAsStream("test.xml");

到時候如果打成jar包,這個xml就位於jar包的根目錄下。

標籤:路徑 javasrc