2013-09-16 105 views
2

我在Netbeans中創建了一個java gui,現在正試圖使用​​java -jar [filename].jar命令通過命令提示符運行它。通過命令提示符運行JDBC Java文件

我創建的gui連接到一個數據庫(也在Netbeans的Servers部分創建)。連接數據庫以查看jdbc:derby://localhost:1527/[DBName]命令。它還需要輸入用戶名和密碼,然後連接。

我的問題是,我可以在Netbeans內連接(顯然,我必須首先在服務選項卡中找到數據庫並連接到它),但無法在命令提示符下連接到數據庫。

使用已完成的代碼,我在Netbeans中選擇了「清理和構建」以在/ dist文件夾中創建.jar文件。

我可以運行.jar文件,但它返回一個錯誤,指出:java.net.ConnectionException : Error connecting to server localhost on port 1527 with message Connection refused: connect.

我/ DIST文件夾包含應用程序的.jar文件以及一個readme.txt文件和/ lib文件夾,其中本身包含derbyclient.jar文件。

創建我的數據庫時,我將位置設置爲java項目目錄,以便在java項目目錄中有一個/ [DBName]文件夾,我假設它包含我的數據庫。

如何在命令提示符下連接到數據庫?或者至少允許我的程序這樣做?

我是否必須明確聲明數據庫的位置?

我是否需要以某種方式從Netbeans導出數據庫?

任何幫助將是偉大的。我現在正在與Java玩弄,並想知道如何在命令提示符下運行它,完全獨立於任何IDE。

Ĵ

+0

你是否嘗試過在Netbeans之外運行你的主類,但也沒有jar-ed?這樣,您可以確保您的類路徑包含所需的所有罐子,而不是希望它們位於正確的位置。 –

回答

0

德比有一個命令行客戶端調用IJ,你可以用它來輸入SQL命令。如果您使用的是內置的Java發行,那麼你需要在JAVA_HOME/DB/bin中尋找,你會發現很多.SH和.bat文件來啓動服務器德比的德比,

NetworkServerControl  derby_common.bat   setEmbeddedCP.bat  setNetworkServerCP.bat stopNetworkServer.bat 
NetworkServerControl.bat ij      setNetworkClientCP  startNetworkServer  sysinfo 
dblook     ij.bat     setNetworkClientCP.bat startNetworkServer.bat sysinfo.bat 
dblook.bat    setEmbeddedCP   setNetworkServerCP  stopNetworkServer 

所以看看這些文件並閱讀java derby db的文檔以瞭解如何啓動它。調用startNetworkServer將啓動derby作爲端口1527上的網絡服務器。

http://db.apache.org/derby/包含大量有關derby的文檔。

+0

我試過這個,但得到一個錯誤,說數據庫不存在。 數據庫與我的Java Project目錄一起保存 - 即[Java Project]/[DB]。 它應該保存在哪裏?或者,我該如何改變文件/文件夾的位置? –

+0

對它進行排序,當startNetworkServer所在位置時,需要將我的DB文件夾放在文件夾中。 如果有方法可以告訴它在哪裏看,請讓我知道。 –

相關問題