Archief - [PROG][JAVA] Queries uit database?

Het archief is een bevroren moment uit een vorige versie van dit forum, met andere regels en andere bazen. Deze posts weerspiegelen op geen enkele manier onze huidige ideeën, waarden of wereldbeelden en zijn op sommige plaatsen gecensureerd wegens ontoelaatbaar. Veel zijn in een andere tijdsgeest gemaakt, al dan niet ironisch - zoals in het ironische subforum Off-Topic - en zouden op dit moment niet meer gepost (mogen) worden. Toch bieden we dit archief nog graag aan als informatiedatabank en naslagwerk. Lees er hier meer over of start een gesprek met anderen.

Ara.

Legacy Member
Als deel van men eindwerk moet ik een java application programmeren. Kzal hieronder even de bedoeling uitleggen van de app.

De bedoeling is dus dat de user op het eerste scherm een gemeente kiest. Deze gemeente staat in een databank gekoppeld met een aantal zaken zoals aantal inwoners, oppervlakte, etc. Wanneer deze gemeente dan is gekozen zou eronder in een tekstvak automatisch het aantal inwoners moeten worden ingeladen uit de database. Uiteraard is de volledige tool nog wel wat complexer, maar dit was eventjes om de situatie te schetsen.

Hoe begint ge daar nu eig aan? Men probleem is eig dat ik niet juist weet hoe via een event een query te doen in een database en hoe in men java code te verwijzen naar deze database. Voor mensen die hier dagelijks mee bezig zijn is het wrs kinderspel, maar ik heb afgezien van 1 jaar nooit java gehad op school.

Is er mss iemand die een heel klein voorbeeldje zou kunnen posten om zo'n beetje de algemene structuur duidelijk te maken? Kheb de jbuilder tutorial al overlopen maar het blijft toch redelijk chinees voor me.

alvast bedankt

MemberX

Legacy Member
Hallo,

De basistechnologie die je vanuit Java gebruikt om te connecteren met een databank heet JDBC. Sinds je nog geen ervaring hebt met JDBC kan je eens de online documentatie lezen zie http://java.sun.com/docs/books/tutorial/jdbc/index.html

De algemene manier van werken verloopt als volgt: eerst maak je uw databank schema aan(ik veronderstel dat je weet hoe dit moet). Daarna maakt je een aantal Data Access Objecten aan, kortweg DAO's. Meestal wordt er per tabel één DAO gemaakt. Met een dao kan je informatie halen uit je databank om nadien te gebruiken in uw programma.

Stel dat je bijvoorbeel een tabel hebt met de gemeentes in. Een gemeente heeft een postcode en nog wat andere velden. In uw Java programma zelf zal je met gemeentes moeten werken, dus maak je best een object Gemeente aan (een klasse dus). Deze klasse vormt een onderdeel van het model van uw applicatie.
Nadien schrijf je een DAO klasse GemeenteDAO die de gegevens vanuit je tabel gaan halen. Concreet zal één object Gemeente overeenkomen met één tuple of rij uit uw tabel.
De GemeenteDAO klasse bevat methode zoals store(Gemeente m), update(Gemeente m) getGemeente(Long id), getAll(), enz.

Als de gebruiker nu in uw applicatie op een knop klik, bijvoorbeeld "Toon alle gemeentes" dan kan jij aan uw GemeenteDAO vragen van getAll() die uw dan een lijst teruggeeft van gemeentes. Deze lijst moet je dan gewoon weergeven.

Dit is ongeveer het principe. Verder zijn er nog twee andere zaken. Ten eerste heb je om met JDBC te werken een Connectie nodig. Deze connectie moet je configureren. Je kan hiervoor best een ConnectionFactory class schrijven die een Singleton is (zoek een naar Singleton pattern) en die een methode getConnection heeft die de jdbc connectie teruggeeft.

De tweede zaak is dat de structuur die ik nu heb uitgelegd niet voldoet aan een 3-tier design (wel het is 2-tier). Meestal wordt er nog een service laag tussen gesmeten die op zich communiceert met de verschillende DAO's.

Groeten
Het archief is een bevroren moment uit een vorige versie van dit forum, met andere regels en andere bazen. Deze posts weerspiegelen op geen enkele manier onze huidige ideeën, waarden of wereldbeelden en zijn op sommige plaatsen gecensureerd wegens ontoelaatbaar. Veel zijn in een andere tijdsgeest gemaakt, al dan niet ironisch - zoals in het ironische subforum Off-Topic - en zouden op dit moment niet meer gepost (mogen) worden. Toch bieden we dit archief nog graag aan als informatiedatabank en naslagwerk. Lees er hier meer over of start een gesprek met anderen.
Terug
Bovenaan