Avatar billede ppstyle Nybegynder
05. december 2001 - 15:01 Der er 10 kommentarer og
1 løsning

JSP - mySQL - beans - generelle konventioner...

Hej derude, jeg er pt. ret optaget af at lære lidt om JSP og tilhørende teknologier. Nu har jeg læst mig til, at man både kan kode sine egne database forespørgsler eller at man kan bruge beans. Derfor sidder jeg lidt forvirret tilbage, med nogle grundlæggende spørgsmål :

1) Hvornår foretrækkes beans frem for egen kodning  ved databaseopslag ? Og hvorfor ?

2) Hvad er de generelle konventioner omkring hvornår man bruger sine egne håndkodet procedures, eller hvornår der bruges beans ? Hvad er nemmest/hurtigst ?

3) Hvad ville de erfarne anbefale man brugte ekstra tid på som begynder hvis man vil arbejde med sider der genereres ud fra en database.

Håber på nogle uddybende svar som selfølgelig giver 60 points hver - mvh. Daniel
Avatar billede disky Nybegynder
05. december 2001 - 15:04 #1
1. Man pakker alt i beans for at kunne adskille design og funktionalitet

2. Du koder også selv dine beans

3. Lære adskillelse af design og funktionalitet.


En bean er jo bare en java klasse som du kan kalde fra en jsp side.

Om du bruger andres bean eller dine egne betyder ikke det helt vilde.
Avatar billede ppstyle Nybegynder
05. december 2001 - 15:14 #2
Men jeg ved der er en del forud programmeret beans, til netop databse opslag, ville det ikke være nemmere at bruge dem istedet for at genopfinde den dybe tallerken ?

Ved programmering af egne beans, vil man så typisk lave en methode tile hvert slags databseopslag ?
Avatar billede ppstyle Nybegynder
05. december 2001 - 15:17 #3
Lige en sidste :)

Specielt går jeg pt. og tygger på om man hente fra database ud fra de kriterier brugeren har stillet, eller om man tager en hel tabel ind ad gangen lægger den i f.x. en vector, og derefter databehandler for så at smide de korrekte ting op på siden. mvh. Daniel
Avatar billede disky Nybegynder
05. december 2001 - 15:17 #4
Man kan godt bruge andres metoder.

Men hvis du vil have helt styr på det, laver du dem bare selv.


Jeg har en standard klasse jeg selv har lavet, og jeg giver den bare en String som indeholder sql sætningen og for så et ResultSet tilbage med resultatet.
Avatar billede ppstyle Nybegynder
05. december 2001 - 15:24 #5
Eh, Disky gider du ikke svare på den sidste så skal du få dine pts.

Altså om det er databasen, der skal lave det \"grove\" arbejde eller om man bare henter ind fra den hvorefter man benytter sig af java logik til at vælge de rigtige data ?

-Daniel
Avatar billede disky Nybegynder
05. december 2001 - 15:24 #6
Du henter kun den data fra databasen som du har brug for. At hente hele tabellen er spild af cpu kraft og memory. Lad databasen lave arbejdet. Det er den alligevel hurtigere til.

Jeg gør følgende:

1. lav en sql query
2. tyg igennem resultset pak data ind i objekter og smid i enden af en arraylist.
3. luk database forbindelse igen (MEGET VIGTIGT)
4. Tyg igennem arrayliste og udskriv data på websiden.
Avatar billede ppstyle Nybegynder
05. december 2001 - 15:25 #7
ok, der var jeg vist lidt for hrutig :)
Avatar billede ppstyle Nybegynder
05. december 2001 - 15:27 #8
ok det gættede jeg også på. Er din array list så repræsenteret som en sychronized list ?

Nå, men tak for dine hurtige svar - vi ses
Avatar billede disky Nybegynder
05. december 2001 - 15:28 #9
nope det er den ikke, da objektet er specifik for den brugers session. Så der er altid kun en bruger der har adgang til den alligevel.

Bare spørg hvis der er problemmer.
Avatar billede ppstyle Nybegynder
05. december 2001 - 15:37 #10
god pointe, det havde jeg ikke lige tænkt på.

Låser man iøvrigt automatisk den tabel man arbejder på i mySQL, eller skal man selv sørge for at \"beskytte\" den ?
Avatar billede disky Nybegynder
05. december 2001 - 15:45 #11
hmmm,

godt spørgsmål jeg ved det faktisk ikke.

Men sørg for at luk din databaseforbindelse så hurtigt du kan får ikke at låse noget.
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester