Projektowanie aplikacji z SQL

0

Witam, obecnie w ramach nauki(1 aplikacja w javie) piszę aplikację do zarządzania zbiorem książek. Aplikacja pisana w javie z użyciem bazy sqlite3. Zastanawiam się jak rozwiązać problem wczytywania/zapisywania danych z/do bazy. Zapisywać na końcu do bazy, a w między czasie trzymać wszystko co nowe na liście i przy wyjściu z programu aktualizować bazę. Czy może lepiej robić bezpośrednie zapytania do bazy danych? Dodaję nową książkę, to robię inserta na bazę, wyszukuję jakąś robię selecta na bazę z pominięciem trzymania wszystkich danych na liście. Co jest lepszym rozwiązaniem i jak to jest rozwiązane w większych systemach?

0

na pewno nie trzymanie wszystkiego w listach. Jak chcesz to zrobić "ładnie" to zainteresuj się jakimś ORMem, np. Hibernate

0

Nie zapisywałbym wszystkiego dopiero przy zamykaniu aplikacji - co jeśli aplikacja się wysypie? Wtedy stracisz wszystkie niezapisane rzeczy. Jeśli dodawana będzie książka, przy kliknięciu w "dodaj" powinien być wykonany insert do bazy. Analogicznie w przypadku edytowania książki - tylko wtedy update.
Co do wyszukiwania - zależy. Jeśli w interfejsie będziesz miał listę książek, pobranych z bazy, wówczas wyszukiwanie może odbywać się na zasadzie filtrowania - tutaj działasz bezpośrednio na liście książek. Natomiast jeśli nie będzie listy książek w interfejsie, nie ładuj wszystkiego do jakiejś kolekcji w kodzie. W tym przypadku lepszy będzie select do bazy.
No i również skłaniałbym się do wykorzystania ORMa, tak jak pisał poprzednik.

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