webForumDet fria alternativet

generell databasklass

2 svar · 196 visningar · startad av Mc Fetto

Mc FettoMedlem sedan nov. 20021 920 inlägg
#1

Jag tänkte göra en lite mer generell databasklass, till början så kommer den med all säkerhet att fara rätt kass men jag börjar på en låg nivå och modifierar senare.

Har ett problem då jag vill kunna skicka med ett objekt till en metod i databassklassen, och en söksträng till sqlfrågan.

Därefter i metoden så ska objektet tas fram (ta fram alla dess attribut, och då tänkte jag börja med endast en klass utan superklasser mm), metoden ska sedan returnera en lista eller dylikt med alla rader ur sqlfrågan sparade i objektets attribut!

Jag vet hur man kan skapa ett objekt ifrån en okänt sådant, men hur luskar jag fram alla attributen?

jmeMedlem sedan maj 20011 967 inlägg
#2

Kika på Java Reflection. Med dess hjälp kan du få reda på klassens metoder och annat skoj. Vilka instansvariablar den har osv.

Men om jag var du så skulle jag istället kanske tänka på att skapa ett interface som definierar vilka metoder som skall ingås.

Om dessa klasser ändå skall behnadla SQL så varför inte skapa generella regler för hur klasserna skall se ut och agera.

T ex för att returnera en ResultSetObject så kan du ha metoden:

- getResultSet() i en interface som alla dina klasser implementerar sen.

- getSqlStatement() för att få sql-satsen

- storeSQlStatement(String pSql) för att lagra sql-satsen

osv osv.

När alla dina klasser implementerar detta interface så måste de också implementera ovanstående metoder.

Sen om du vill ha en viss klass för de som använder MySQL och en annan för de som kör med t ex MS SQL Server så kan du lägga vissa delar i en super-klass och sedan lägga databas-specifika saker i sina egna klasser som båda implementerar ovanstående interface. Även om alla klasser har samma metoder så kan metoderna byggas upp beroende på databasen.

Vad exakt skall dessa databasklasser innehålla och göra?

Skall dessa klasser sköta uppkopplingen mot databasen eller skall de innehålla metoder för att ställa SQL-frågor?

Mc FettoMedlem sedan nov. 20021 920 inlägg
#3

Tack, ska köra ngt liknande ditt förslag först så man får ihop en fungerande klass. Sen kan man ju alltid pilla vidare!

Genererad på 369 ms · cache AV · v20260730165559-full.f96bc7eb