Zonder veel ervaring te hebben met Software-engineering moeten we voor onze opleiding een programma schrijven dat gebruik maakt van een database (java/access).
Momenteel maakten we om database te wijzigen/gegevens op te halen gebruik van een zelfgeschreven klasse met onder andere de volgende functies.
private void loadDriver() // Wordt uitgevoerd in constructor
private void connect()
private void closeConnection()
public void changeDatabase(String query) // Gebruikt executeUpdate en voert de query uit op de database
public ResultSet getResultset(String query)
De eerste twee functies zijn private en worden gebruikt in de volgende functies.
Het probleem is dat het onmogelijk is om een functie getResultSet te maken die een object van het type ResultSet retourneert nadat de databaseconnectie gesloten is. Het snel sluiten van de database is een prioriteit.
Een oplossing is om alles in een Array of Arraylist te stoppen, daarna de connectie te sluiten en de array/arraylist retourneren. Hier heb ik al een functie voor geschreven en die werkt.
Een andere oplossing is om connect() /closeConnection() public te maken, maar dan is de hele bedoeling van deze klasse weg. Namelijk een makkelijke manier aanbieden om met de database te werken zonder dat je je zorgen moet maken over ongesloten connecties, ...
Mijn vraag is of de array een goede oplossing is voor het probleem of hoe dit in de praktijk wordt aangepakt?
Momenteel maakten we om database te wijzigen/gegevens op te halen gebruik van een zelfgeschreven klasse met onder andere de volgende functies.
private void loadDriver() // Wordt uitgevoerd in constructor
private void connect()
private void closeConnection()
public void changeDatabase(String query) // Gebruikt executeUpdate en voert de query uit op de database
public ResultSet getResultset(String query)
De eerste twee functies zijn private en worden gebruikt in de volgende functies.
Het probleem is dat het onmogelijk is om een functie getResultSet te maken die een object van het type ResultSet retourneert nadat de databaseconnectie gesloten is. Het snel sluiten van de database is een prioriteit.
Een oplossing is om alles in een Array of Arraylist te stoppen, daarna de connectie te sluiten en de array/arraylist retourneren. Hier heb ik al een functie voor geschreven en die werkt.
Een andere oplossing is om connect() /closeConnection() public te maken, maar dan is de hele bedoeling van deze klasse weg. Namelijk een makkelijke manier aanbieden om met de database te werken zonder dat je je zorgen moet maken over ongesloten connecties, ...
Mijn vraag is of de array een goede oplossing is voor het probleem of hoe dit in de praktijk wordt aangepakt?