ユーザーがデータベース接続のURL、名前、パスワードを変更するためのスペースから(とりわけ)プログラムを作成しています。
クラスでは、ファイルに保存されている値を取得し、ここまではすべて問題ありません。問題は、クラスにいるときにバタベースの接続に関して発生します。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;
}
}
}