ZSBD-2st-1.2-lab5.tresc-1.3-Slajd9

Z Studia Informatyczne
Wersja z dnia 13:33, 9 sie 2006 autorstwa PKrzyzagorski (dyskusja | edycje)
(różn.) ← poprzednia wersja | przejdź do aktualnej wersji (różn.) | następna wersja → (różn.)
Przejdź do nawigacjiPrzejdź do wyszukiwania

Modyfikacja obiektów

Modyfikacja obiektów


Wykorzystamy obecnie poznane dotychczas metody zapisu i odczytu obiektów do przeprowadzenia modyfikacji obiektu zapisanego w bazie danych. W celu pokazania jak można modyfikować obiekty zapisane już w bazie danych ciągle będziemy zakładać, że w bazie danych umieszczony jest obiekt reprezentujący niebieski trójkąt o boku długości 10 jednostek.

Kod przedstawiony na (1) powinien zastąpić kod oznaczony jako (2) na poprzednim slajdzie. W celu przeprowadzenia modyfikacji obiektu należy go najpierw odczytać z bazy danych. W tym celu wykonywane jest zapytanie (2). W kolejnym kroku referencja na obiekt jest wyciągana z kolekcji i zapisywana do zmiennej bigBlueTriangle (3). Ponieważ wiemy, że w bazie znajduje się tylko jeden obiekt reprezentujący trójkąt, to można otrzymać odpowiednią referencję z kolekcji za pomocą wywołania metody get interfejsu List<E> (Uwaga! To jest zupełnie inna metoda, niż metoda get interfejsu ObjectContainer!). Ostatecznie obiekt jest modyfikowany za pomocą standardowej operacji przypisania i zapisywany do bazy danych za pomocą metody set (4). Po wyżej opisanych operacjach obiekt w bazie danych powinien reprezentować niebieski trójkąt o długości boku równej 20 jednostek. Należy zwrócić szczególną uwagę na fakt, iż obiekt musi być najpierw odczytany z bazy danych, a potem zmodyfikowany, i zapisany. Jeżeli, przykładowo, zostałby utworzony nowy obiekt koloru niebieskiego, o długości boku 20 i został zapisany za pomocą metody set, to zostałby on zapisany jako drugi obiekt w bazie danych, a pierwszy obiekt nie uległby modyfikacji. Jeżeli chodzi o sposoby modyfikacji obiektu odczytanego z bazy danych, to można stosować dowolne sposoby dostępne w języku Java: poprzez przypisanie, aktywację metody zmieniającej stan obiektu, jak również wykorzystanie dowolnych innych operatorów zmieniających stan pól obiektu.


Kompletny kod programu, którego fragmenty pokazano na slajdzie załączono do kursu w postaci pliku: Skeleton-lab5.4.java


<< Poprzedni slajd | Spis treści | Następny slajd >>