2012-12-06 72 views
0

這是一個連接到數據庫的jFrame,它在按鈕連接中。我的問題是在passwordField NetBeans讓我做一個char [],但我的.getConnection不讓我插入char []錯誤:「找不到適合getConnection(String,String,char [])的方法」。所以我會改變字符串的權利?所以當我更改並運行jFrame時,表示訪問被拒絕。當我開始做System.out.println(l)「給我正確的答案」就像這樣:「Alex」。但是,當我做System.out.println(密碼)「給我的數組空間,而不是價值」 像這樣:jdbc:mysql:// localhost/home inventory root [C @ 5be5ab68 < --- Array space。我做錯了什麼?PasswordFiled char []以Java連接字符串MySql?

try { 
    Class.forName("org.gjt.mm.mysql.Driver"); //Load the driver 

    String host = "jdbc:mysql://"+tServerHost.getText()+"/"+tSchema.getText(); 

     String uName = tUsername.getText(); 
     char[] l = pPassword.getPassword(); 
     System.out.println(l); 
     String password= l.toString(); 

     System.out.println(host+uName+password); 
     con = DriverManager.getConnection(host, uName, password); 
     System.out.println(host+uName+password); 
    } catch (SQLException | ClassNotFoundException ex) { 

    JOptionPane.showMessageDialog(this, ex.getMessage()); 
    } 
} 

回答

1

要將char []轉換爲字符串,只需創建一個新的String並將char []作爲參數傳遞給構造函數。 new String(char[])

char[] l = pPassword.getPassword(); 
String s = new String(l); 
System.out.println(s); 
+0

工作很好我以前是這麼做的:String s = new String(char [l]);我不是我在想什麼。謝謝 – user1819551