Я делаю приложение, которое может генерировать классы из моей базы данных оракула.Поэтому, чтобы получить доступ к этой странице генерации, пользователю необходимо войти в необходимую ему базу данных оракула. Я знаю, как подключиться к базе данных, но как я могу заставить его подключиться только один раз, а затем использовать это единственное соединение во всех моих классах?
Я пытался использовать синглтон, но после моих исследований я обнаружил, что это не рекомендуется, я все еще ищу, но если кто-то может указать мне правильное направление или объяснить, как это сделать, это будетотлично.
Спасибо!
Редактировать -
Итак, на данный момент я сделал что-то подобное, я чувствую, что это работает, но правильно ли это делать так?
public class Singleton {
private static Singleton INSTANCE = null;
private Connection connection;
public Singleton()
{
}
public static Singleton getInstance()
{
if(INSTANCE == null)
{
INSTANCE = new Singleton();
}
return INSTANCE;
}
public void setSingletonConnexion(String URL, String userName, String password, String networkAlias) throws SQLException, ClassNotFoundException
{
Class.forName("oracle.jdbc.driver.OracleDriver");
System.setProperty("pathOfTNS");
//System.out.println("driver ok");
this.connection = DriverManager.getConnection("jdbc:oracle:thin:@"+URL+":PORT:SID", userName,password);
System.out.println("CO OK");
ResultSet rs = this.connection.createStatement().executeQuery("SELECT * FROM TABLE");
if(rs.next())
{
System.out.println(rs.getString(5));
}
}
public Connection getConnection()
{
return this.connection;
}
}