2012-10-07 102 views
0

我正在創建一個程序,其中包含用於更改數據庫連接的URL,名稱和密碼的空間。通過config.properties連接數據庫

在一個類中,我得到了保存在一個文件中的值,並且一切正常。當我在課堂上關於batabase的連接時出現問題。該錯誤不是OutProp方法(它可以獲取屬性文件中的數據),因爲我在另一個類中嘗試了它,並且它工作正常。所以我想有一個編寫代碼的問題,也許在公共靜態方法Connection ConnectDb()中是靜態的,你必須有不同的行爲,並且由於我最近開始學習Java,所以我想我錯過了一些東西。

PS。寫入Connection conn = DriverManager. getConnection ("jdbc: mysql://localhost/databaseprogetto/root/root");連接到數據庫。

謝謝您的任何建議或解決方案,我希望我解釋得很好。

import java.io.FileInputStream; 
import java.sql.*; 
import javax.swing.*; 
import java.io.IOException; 
import java.util.Properties; 

public class JavaConnect { 

Connection conn = null; 
static String url_database; 
static String username; 
static String password; 

public void OutProp(){ 

Properties prop = new Properties(); 

    try { 
     prop.load(new FileInputStream("config.properties")); 

      url_database = prop.getProperty("Url"); 
      username = prop.getProperty("Username"); 
      password = prop.getProperty("Password"); 


    } catch (IOException ex) { 
     ex.printStackTrace(); 
    } 
} 


public static Connection ConnectDb(){ 

    try{   
     Class.forName ("com.mysql.jdbc.Driver"); 
     Connection conn = DriverManager.getConnection (url_database,username,password); 

     return conn; 
    } 
    catch (Exception e) { 
     JOptionPane.showMessageDialog(null, e); 
     return null; 
    } 
} 
} 

回答

0

確保您有兩側的屬性文件中2個操作數的沒有空間

如:

Property1=value1 
Property2=value2 

2.嘗試把這個Property file在你的項目的bin文件夾。