ActiveRecord

Odpowiedz Nowy wątek
2006-11-08 11:35
0

Witam
Dopiero rozpoczynam zabawę z JAVĄ i niestety (albo i stety, to się okaże) muszę Od razu zacząć kleić w tym języku coś na wzór ActiveRecord. Chodzi o to, aby odwzorować zawartość bazy na obiekty. Znalazłem w necie kilka rozwiązań, ale niestety żadnego w JAVIE. Dlatego już na starcie mam pewne problemy związane z implementacją. Dlatego mam prośbę.

1) Jak ktoś ma namiary na tego typu rozwiązania w JAVIE, to niech napiszę. Na początek zależy mi na prostych wzorach, albo nawet pewnych fragmentach, które pozwolą mi zrozumieć pewne aspekty.

2) Mam pewną koncepcję (w sumie to powstała ona w oparciu o tego typu rzowiązanie, ale napisane w PHP) i zależy mi opinii i uwagach.

Chciałem stworzyć klasę podstawową class ActiveRecord, z której będą dziedziczyć wszystkie klasy pochodne class Pochodna, które będą odwzorowywać tabelę z bazy MySQL. Każdy obiekt typu class Pochodna będą przechowywać informacje o pojedyńczym rekordzie z tabeli. I tu pojawił się 1 problem. O ile w PHP wcześniejsza deklaracja zmiennych jest nie konieczna, o tyle w JAVIE tak. Chciałem to zrobić, tak, że w klasie pochodnej należało by zdeklarować zmienne, które były by odpowiednikami pól w rekordzie tablicy. Tylko wtedy w każdej klasie pochodnej, należało by dopisać od nowa funkcję:
a) tworzącą nowy obiekt typu class Pochodna
b) tworzącą zapytanie SQL umożłiwiające zapisanie aktualnego stanu obiektu do bazy

Będę wdzieczny za wszelkie uwagi i linki to przykładów, bo jakoś sam na przykłądy napisane w JAVIE nie mogę trafić. Jeśli coś opisałem nie dokońca dobrze, to sorry, ale jest to temat dla mnie zupełnie nowy.

PS: Czy w JAVIE jest coś takiego jak domyślne wartośc parametrów funkcji, bo nie mogę tego nigdzie znaleŹć - chodzi o odpowiednik z C funkcja(int a=0) { }.

Pozostało 580 znaków

2006-11-11 12:25
0

Poczytaj o Hibernate. W skrócie powiem, że ten bardzo popularny framework pozwala na mapowanie klas Javy na bazę danych. Dla aplikacji J2EE również rozwiązaniem jest EntityBean


Pozostało 580 znaków

Odpowiedz
Liczba odpowiedzi na stronę

1 użytkowników online, w tym zalogowanych: 0, gości: 1, botów: 0