0

これはデータベースに接続するための jFrame で、接続ボタンにあります。私の問題は passwordField NetBeans で char[] を実行することですが、私の .getConnection では char[] を挿入できません。では、String に変更しますよね?そのため、jFrame を変更して実行すると、アクセスが拒否されました。System.out.println(l) を実行し始めると、「正しい答えを教えてください」というように、「アレックス」となります。しかし、System.out.println(password) を実行すると、「値ではなく配列のスペースを教えてください」次のようになります: jdbc:mysql://localhost/home inventory root [C@5be5ab68 <--- Array space . 私が間違っていることは何ですか?

 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());
    } 
}
4

1 に答える 1

1

char[] を文字列に変換するには、コンストラクタに引数として char[] を渡して新しい文字列を作成するだけです。新しい文字列 (char[])

char[] l = pPassword.getPassword();
String s = new String(l);
System.out.println(s);
于 2012-12-06T17:05:07.587 に答える