2017-08-11 98 views
0

2017年8月12日哪一個是真正使用的數據庫?一個在JAR文件或一個資源

我的項目結構是這樣的...... FamilyTreeV03 •Src的 啊,我所有的類文件 ØDBRoutines.java(這是其中之一執行所有數據庫操作) •資源 o數據庫 ▪FamilyTreeDB.db(一個sqlite數據庫)。 O鏡像 我的圖像文件PNG,JPEG等 在我DBRoutines指定的數據庫就像

private java.sql.Connection RO_Connection; 
    private final String sqliteDBname = "jdbc:sqlite:resources/database/FamilyTreeDB.db"; 

... ..作爲一個叫做數據庫連接()函數如下 連接已建立。

RO_Connection = java.sql.DriverManager.getConnection(sqliteDBname); 

在我已經包括資源目錄和資源(我認爲它進入build-impl.xml中!!!!

對於圖像的項目設置,我指定的路徑

File thisImageFile; 
if (Gender == "Male") { 
    thisImageFile = new File("resources\\Images\\Gentleman.jpg"); 
} else { 
    thisImageFile = new File("resources\\Images\\Lady.jpg"); 
} 

我做了一個乾淨和建設該項目,並一切從NetBeans IDE中工作得很好 數據庫坐在G:\ 64BitJavaPrograms \ FamilyTreeV03 \建立\類\ database目錄不要問我爲什麼&圖像坐在哪裏在G:\ 64BitJavaPrograms \ FamilyTreeV03 \ build \ classes \ Images下。

雖然我試圖從命令提示符執行從DIST目錄...它無法看到數據庫或圖像。他們坐在DARABASE或IMAGES目錄下的JAR文件中。 DBRoutines.java中的代碼不可見。我必須將RESOURCES目錄複製到DIST目錄,一切正常。

現在DIST目錄中會有兩個SQLITE數據庫,一個在JAR文件中,另一個在RESOURCES/DATABASE目錄中。

我很混亂。

有人可以幫助....我只想使用位於JAR文件中的數據庫文件。怎麼做。

請讓我知道,在此先感謝。

回答

0

問題已解決。

我的源代碼目錄結構是源文件的project \ src和我的圖像文件的數據庫文件和項目\資源\圖像的項目\資源\數據庫。

數據庫例程如下定義數據庫。

private final String sqliteDBname = "jdbc:sqlite:resources/database/FamilyTreeDB.db"; 
RO_Connection = java.sql.DriverManager.getConnection(sqliteDBname); 

在build.xml中我加了,

<target name="-post-compile"> 
    <copy todir="dist/resources/database"> 
     <fileset dir="build/classes/database"/> 
    </copy> 
    <copy todir="dist/resources/images"> 
     <fileset dir="build/classes/images"/> 
    </copy> 
</target>  

輸出是項目\ DIST \資源\數據庫,項目\ DIST \資源\圖像和項目\ DIST \ project.jar。該jar文件沒有數據庫文件的副本,坐在裏面。

感謝大家看了這個.....

相關問題