Java|JDBC - Webshop. Hogyan illik Java-ban megvalósítani adatbázis-kezeléses dolgokat?
Szeretnék csinálni egy Java alapú webshopot, de egy két elméleti kérdésem lenne, leginkább osztálytervezéssel kapcsolatban.
Tehát hogyan is kell ezt megcsinálni?
Van 2-3 táblám: felhasználók, termékek, rendelések
Ezeket a táblákat a Java-ban illik külön külön osztályban használni? Például:
MySql.class...
UsersTable extends MySql
ProductsTable extends MySql
...
Ezt így szokás csinálni?
MySql.class-ban lennének readData, updateData, close függvények és ezeket overrideolnák a gyerek osztályok?
Régen csináltam már közvetlenül JDBC-vel adatbázis kapcsolatot, inkább hibernate-et használok.
Úgy szoktam (és így tanították):
- Legyen egy java osztály az entitásoknak: User, Product...
- Legyen egy ős DAO, ami az alap adatbázis műveleteket kezeli: entitás betöltése id alapján, entitás mentése, szinkronizálsása
- Legyen 1-1 DAO osztály mindegyik entitáshoz, ami a DAO osztályból származik és ami speciálisan kezeli az entitásokat, azok igényei szerin: UserDAO, ProductDAO.
Elsőre biztosan. Próbáld megtalálni az egyensúlyt az osztályok egyszerűsége és a funkcionalitás között.
Egy osztálynak bőven elég az a feladat, hogy egy felhasználót reprezentáljon, kár tovább bonyolítani azzal is, hogy az adatbázis ki-be töltögetésért feleljen.
Ehhez persze kell egy látásmód és meg kell írni pár spagettikódú progit, hogy aztán jöjjön a kérdés: "először ugyan miért nem így csináltam?"
Ha ez amolyan hobbi most neked, szóval van rá időd, akkor szerintem érdemes lenne először megírnod szó szerint kakin :D
Azaz ne gondolkozz még szép/bonyolult megoldásban. Csináld meg azt hogy ki tudj szedni 1-1 táblából mindent, meg be tudj rakni mindent, illetve mondjuk törölni mindent.
Aztán olvass utána a refactoringnak, amikor lépésről lépésre javítasz a kód minőségén, különböző lépésekkel :)
Én amikor valamit el akarok sajátítani, akkor jobb szeretem ezt a módszert. Sokkal könnyebb megérteni/átlátni, illetve egy jó kis gyakorlás is :)
Megjegyzés: refactorálni csak működő kódot lehet, azaz pár tesztet írj az egész előtt hozzá, ha azokon átmegy az eredeti verziód, akkor minden egyes lépés után próbálgasd, hogy jó-e még mindig, nem-e rontottad el valahol.
Adatokat meg csak lökd még konzolra, először rázódj bele :)
Kapcsolódó kérdések:
Minden jog fenntartva © 2024, www.gyakorikerdesek.hu
GYIK | Szabályzat | Jogi nyilatkozat | Adatvédelem | Cookie beállítások | WebMinute Kft. | Facebook | Kapcsolat: info(kukac)gyakorikerdesek.hu
Ha kifogással szeretne élni valamely tartalommal kapcsolatban, kérjük jelezze e-mailes elérhetőségünkön!