...
Voor de applicatie wordt een nieuwe database toegepast, omdat de huidige database informatie bevat die niet nodig zijn voor de nieuwe implementatie. Hiervoor zijn een aantal opties: We kunnen ervoor kiezen de Microsoft Access database, die huidig in gebruik is, opnieuw in te richten met minder tabellen en data. Ook kunne kunnen we voor andere single-file database kiezen, zoals SQLite. We kiezen ervoor gebruik te maken van een embedded database omdat vanwege kosten een hosted (online) database geen optie is.
Om dit onderzoek te verrichten zullen wij zowel bieb- als labonderzoek uitvoeren, waarin we literatuuronderzoek uitvoeren en door middel van kleine testimplementaties de twee implementaties onderzoeken.
Hoofdvraag
De hoofdvraag is dus als volgt: Welke database sluit het best aan binnen de nieuwe applicatie?
...
Om een goed en beargumenteerd antwoord op de hoofdvraag te kunnen geven hebben we ook een aantal deelvragen opgesteld, onderverdeeld per potentiele database-oplossing:
...
Voordelen van Microsoft Access?
- Easy to useGebruiksgemak: Je kan de gegevens van de database makkelijk inzien en aanpassen door het bestandje te openen.
- GUI: De database heeft een ingebouwde gebruikersomgeving waarmee gebruikers gegevens kunnen bewerken en toevoegen.
- Formulieren: Je kunt formulieren maken om het toevoegen en bewerken van gegevens vriendelijker te maken. Dit kun je doen door bijvoorbeeld knoppen, tekst velden en dropdown lijsten toe te voegen.
...
- Geen GUI: Je kunt niet makkelijk de gegevens van de SQLite database aanpassen omdat het geen ingebouwde native GUI heeft, als je toch gegevens wilt bewerken moet een aparte applicate installeren.
- Maximale grootte: Een SQLite database kan maximaal 2GB groot zijn waardoor je dus niet oneindig veel gegevens er in kwijt kan (SQLite Advantages And Disadvantages - Javatpoint, z.d.).
...
Het aanmaken van een database kan op veel verschillende manieren. Binnen IntelliJ is het gelukkig vrij simpel. Je klikt eerst op de Database knop rechts in het scherm. Daarna klik je op het plusje, Data Source en selecteer je SQLite.
Het database menu in IntelliJ.
Daarna kom je in onderstaand menu. In het "File" veld vul je de naam van de database in met .db erachter.
Voorbeeld van het aanmaken van een nieuwe database connectie in IntelliJ
Er is nu een database aangemaakt in de folder van het project. Als je bij het database menu kijkt staat er nu een database genaamt newDatabase.db. Je kunt nu de database selecteren en op de console knop klikken. In deze console kun je queries op de database uitvoeren.
...
Om SQLite met JPA te laten werken heb je natuurlijk de standaard JPA depencies dependencies nodig en de SQLite JDBC driver.
De drie benodigde dependencies in pom.xml
In persistence.xml moet het dialect, de path naar de database en de driver worden ingesteld. Het dialect voor SQLite is het SQL server dialect en de driver is de JDBC SQLite driver. Ook moet 'hbm2ddl.auto' worden ingesteld op update zodat de database niet wordt geoverwrite overschreven wanneer er een nieuwe connectie wordt aangemaakt. Aangezien IntelliJ standaard SQLite ondersteund kun je de entities laten genereren.
Conclusie
Voorbeeld van persistence.xml
Conclusie
Na het onderzoeken van SQLite en Microsoft Access kan worden geconcludeerd dat beide opties zouden kunnen aansluiten op het nieuwe indelingsprogramma.
Microsoft Access biedt een gebruiksvriendelijke GUI en maakt het eenvoudig om gegevens te bewerken en toe te voegen. Echter, het vereist het bezit van het Office 365 pakket, is beperkt tot PC's en heeft beperkte online toegankelijkheid. De verbinding tussen Java en Microsoft Access kan worden gerealiseerd met behulp van de Ucanaccess JDBC driver, hoewel extra inspanning nodig is voor handmatige mapping van entiteitsklassen.
Aan de andere kant biedt SQLite voordelen zoals gratis gebruik, open source en ondersteuning voor meerdere besturingssystemen. Echter, het mist een duidelijk bedoelde GUI en heeft een maximale databasegrootte van 2GB. De maximale grootte is voor ons niet van toepassing omdat je maar moeilijk tot komt. De verbinding tussen Java en SQLite kan eenvoudig worden gemaakt met behulp van de SQLite JDBC driver.
In ons geval sluit SQLite het beste aan op onze toekomstige applicatie. SQLite kan gebruikt worden op Windows en MacOS, dit is een eis van de opdrachtgever en daarom is dit een essentieël voor het database systeem. Ook is het makkelijk om een connectie te maken tussen Java en SQLite. Dit is fijn tijdens de ontwikkelomgeving omdat dit het proces van het maken versnelt.tekst
Bibliografie
- Owens, M. (2006). Introducing SQLite. The Definitive Guide to SQLite, 1-16. SQLite:
- Single File Database. (z.d.). sqlite.org. Geraadpleegd op 11 april 2024, van https://www.sqlite.org/onefile.html
- Terra, J. (2023, 24 april). What is Microsoft Access? An Introductory Guide. Simplilearn.com. Geraadpleegd op 11 april 2024, van https://www.simplilearn.com/what-is-microsoft-access-article
- Vogel, J. (z.d.). ICT Research Methods — Methods Pack for Research in ICT. ICT Research Methods. Geraadpleegd op 11 april 2024, van https://ictresearchmethods.nl/
- Microsoft. (z.d.). Vergelijk alle Microsoft 365-abonnementen (voorheen Office 365) - Microsoft Store. Geraadpleegd op 11 april 2024, van https://microsoft.com/nl-NL/microsoft-365/buy/compare-all-microsoft-365-products?market=nl
- SQLite Advantages and Disadvantages - javatpoint. (z.d.). www.javatpoint.com. Geraadpleegd op 11 april 2024, van https://www.javatpoint.com/sqlite-advantages-and-disadvantages