Gå til innhold

java og jdbc - enkelt spørsmål


Anbefalte innlegg

Har laget et program, der datastrukturen er lister. Før ble datastrukturen lagret til fil, men nå bruker jeg database. Nå gjør jeg det på den måten at når programmet startes, så leses all data fra databasen inn i datastrukturen, og når programmet avsluttes, så droppes tabellene først, for å deretter lage tabellene på nytt, og så skrive all data til databasen

 

UTROLIG tungvint, men dette er bare for en test. Hvordan går jeg videre for å få dette effektivt?

Lenke til kommentar
Videoannonse
Annonse
Har laget et program, der datastrukturen er lister. Før ble datastrukturen lagret til fil, men nå bruker jeg database. Nå gjør jeg det på den måten at når programmet startes, så leses all data fra databasen inn i datastrukturen, og når programmet avsluttes, så droppes tabellene først, for å deretter lage tabellene på nytt, og så skrive all data til databasen

 

UTROLIG tungvint, men dette er bare for en test. Hvordan går jeg videre for å få dette effektivt?

6383732[/snapback]

 

1. Du må lagre fortløpende, tenk hvis du gjør en mengde operasjoner og så skjer det en uventet feil, da mister du kanskje et dags arbeid?

 

2. Bare hent de dataene du trenger når du trenger dem, ikke last inn alle i starten.

Lenke til kommentar

Takk for svar.

 

Jeg bruker nå en listestruktur som er selve datastrukturen. Du sier jeg skal lagre fortløpende, og hende data kun når jeg trenger dem - skal jeg da gjøre det på den måten at når jeg f.eks skal hente data om alle personene i registeret som heter 'Nordmann', så henter jeg dem fra databasen, legger dem så inn i listestrukturen, og for å deretter presentere dama til brukeren?

 

 

 

 

Har laget et program, der datastrukturen er lister. Før ble datastrukturen lagret til fil, men nå bruker jeg database. Nå gjør jeg det på den måten at når programmet startes, så leses all data fra databasen inn i datastrukturen, og når programmet avsluttes, så droppes tabellene først, for å deretter lage tabellene på nytt, og så skrive all data til databasen

 

UTROLIG tungvint, men dette er bare for en test. Hvordan går jeg videre for å få dette effektivt?

6383732[/snapback]

 

1. Du må lagre fortløpende, tenk hvis du gjør en mengde operasjoner og så skjer det en uventet feil, da mister du kanskje et dags arbeid?

 

2. Bare hent de dataene du trenger når du trenger dem, ikke last inn alle i starten.

6385611[/snapback]

Lenke til kommentar

Jeg kjenner ikke ditt faglige nivå og interesse, men vil anbefale deg å ta en kikk på Hibernate for dette. Det er sikkert litt overkill for prosjektet ditt, men dette er et emne det virkelig lønner seg å ha kompetanse på. Kort fortalt, er Hibernate et verktøy som knytter objektene dine direkte opp mot databasen. Hibernate blir da liggende som et lag mellom applikasjonen og databasen. Fordelen med dette er i tillegg til at det sparer deg for en del kodelinjer at Hibernate støtter og er optimalisert for svært mange ulike databaser (faktisk i overkant av 20), deriblant, Oracle, mySQL, PostgreSQL, MS SQL Server ++

Lenke til kommentar

Jeg oppnådde graden dataingeniør nå i juni. Rammerverk j2ee har vi ikke hatt noe om på skolen utenom servlets. Hibernate virker interessant det, så skal forsøke dette.

 

OM jeg skulle velge å ikke benytte hibernate, men går for det jeg skisserte i min forrige tråd, er det en effektiv måte å gjøre det på? Altså at når jeg trenger data, så henter jeg de data jeg trenger og legger over i listestrukturen, for å deretter presentere dataene i de swing-komponentene jeg bruker?

 

 

 

 

 

Jeg kjenner ikke ditt faglige nivå og interesse, men vil anbefale deg å ta en kikk på Hibernate for dette. Det er sikkert litt overkill for prosjektet ditt, men dette er et emne det virkelig lønner seg å ha kompetanse på. Kort fortalt, er Hibernate et verktøy som knytter objektene dine direkte opp mot databasen. Hibernate blir da liggende som et lag mellom applikasjonen og databasen. Fordelen med dette er i tillegg til at det sparer deg for en del kodelinjer at Hibernate støtter og er optimalisert for svært mange ulike databaser (faktisk i overkant av 20), deriblant, Oracle, mySQL, PostgreSQL, MS SQL Server ++

6387575[/snapback]

Lenke til kommentar

Har gjort en god del tester og prøver* å bruke Hibernate - det er MYE å sette seg inn i!

 

Jeg kan anbefale å bruke Annotations og ikke hbm.xml filer - det er stort sett bedre med en fil enn med to ;)

 

*Er nesten ferdig med å integrere Hibernate inn i et større prosjekt med 3 database schemaer med tilsammen ca 600 tabeller.

Lenke til kommentar
Jeg bruker nå en listestruktur som er selve datastrukturen. Du sier jeg skal lagre fortløpende, og hende data kun når jeg trenger dem - skal jeg da gjøre det på den måten at når jeg f.eks skal hente data om alle personene i registeret som heter 'Nordmann', så henter jeg dem fra databasen, legger dem så inn i listestrukturen, og for å deretter presentere dama til brukeren?

 

Hibernate er mye å sette seg inn i, men man får begynne i det små og utvide etterhvert. Det er i alle fall meget god kunnskap å sitte på når man skal ut og søke jobb. Det viser både interesse og evne å besitte kunnskaper utover pensum :)

 

Når det gjelder løsningen dersom du ikke bruker Hibernate så blir vel den antagelig ganske lik. Med andre ord, hent ut data fra databasen like før du skal presentere de, og lagre ned i databasen med en gang du har noe å lagre. Hent opp kun det du trenger, og lagre kun det som er endret/nytt. Problemer kan imidlertid oppstå fordi objekt-orientering og relasjonsdatabaser ikke er helt "kompatible" rent logisk. Hibernate forsøker å løse den type problemer for deg ved å ta seg av mappingen av objektene dine mot databasen, og gir deg samtidig et API for blant annet å enklere og kunne gjøre CRUD-operasjoner mot databasen.

 

Må for øvrig si jeg lo godt da jeg leste det siterte innlegget. Et program som utfører en rekke kall mot en database for så å ende opp med å presentere dama til brukeren er intet mindre enn banebrytende og revolusjonerende :w00t:

 

Alltid moro når skriveleifer får ny og festlig mening :)

Lenke til kommentar

hehehe knallbra! Nå fikk jeg meg en god latter også, det skulle selvsagt stå "data" istedet for "dama" javascript:emoticon(':!:')

 

Skal sette meg inn i hibernate nå...har funnet noen tutorials på nettet :-)

 

 

Jeg bruker nå en listestruktur som er selve datastrukturen. Du sier jeg skal lagre fortløpende, og hende data kun når jeg trenger dem - skal jeg da gjøre det på den måten at når jeg f.eks skal hente data om alle personene i registeret som heter 'Nordmann', så henter jeg dem fra databasen, legger dem så inn i listestrukturen, og for å deretter presentere dama til brukeren?

 

Hibernate er mye å sette seg inn i, men man får begynne i det små og utvide etterhvert. Det er i alle fall meget god kunnskap å sitte på når man skal ut og søke jobb. Det viser både interesse og evne å besitte kunnskaper utover pensum :)

 

Når det gjelder løsningen dersom du ikke bruker Hibernate så blir vel den antagelig ganske lik. Med andre ord, hent ut data fra databasen like før du skal presentere de, og lagre ned i databasen med en gang du har noe å lagre. Hent opp kun det du trenger, og lagre kun det som er endret/nytt. Problemer kan imidlertid oppstå fordi objekt-orientering og relasjonsdatabaser ikke er helt "kompatible" rent logisk. Hibernate forsøker å løse den type problemer for deg ved å ta seg av mappingen av objektene dine mot databasen, og gir deg samtidig et API for blant annet å enklere og kunne gjøre CRUD-operasjoner mot databasen.

 

Må for øvrig si jeg lo godt da jeg leste det siterte innlegget. Et program som utfører en rekke kall mot en database for så å ende opp med å presentere dama til brukeren er intet mindre enn banebrytende og revolusjonerende :w00t:

 

Alltid moro når skriveleifer får ny og festlig mening :)

6395534[/snapback]

:!: :!: :!: :D

Lenke til kommentar

Opprett en konto eller logg inn for å kommentere

Du må være et medlem for å kunne skrive en kommentar

Opprett konto

Det er enkelt å melde seg inn for å starte en ny konto!

Start en konto

Logg inn

Har du allerede en konto? Logg inn her.

Logg inn nå
  • Hvem er aktive   0 medlemmer

    • Ingen innloggede medlemmer aktive
×
×
  • Opprett ny...