Spring JDBC - przegląd
Podczas pracy z bazą danych przy użyciu zwykłego starego JDBC, pisanie niepotrzebnego kodu obsługującego wyjątki, otwieranie i zamykanie połączeń z bazą danych itp. Staje się uciążliwe. Jednak Spring JDBC Framework zajmuje się wszystkimi niskopoziomowymi szczegółami, zaczynając od otwarcia połączenia, przygotowania i wykonanie instrukcji SQL, przetwarzanie wyjątków, obsługa transakcji i wreszcie zamknięcie połączenia.
Wystarczy zdefiniować parametry połączenia i określić instrukcję SQL do wykonania oraz wykonać wymaganą pracę dla każdej iteracji podczas pobierania danych z bazy danych.
Spring JDBC udostępnia kilka podejść i odpowiednio różne klasy do połączenia z bazą danych. W tym samouczku zajmiemy się klasycznym i najpopularniejszym podejściem, które wykorzystuje klasę JDBC Template frameworka. Jest to centralna klasa szkieletowa, która zarządza całą komunikacją z bazą danych i obsługą wyjątków.
Klasa szablonu JDBC
Klasa JDBC Template wykonuje zapytania SQL, aktualizuje instrukcje i wywołania procedur składowanych, wykonuje iterację zestawów wyników i wyodrębnia zwracane wartości parametrów. Przechwytuje również wyjątki JDBC i tłumaczy je na ogólną, zawierającą więcej informacji hierarchię wyjątków zdefiniowaną w pakiecie org.springframework.dao.
Instancje klasy JDBC Template są zabezpieczone wątkami po skonfigurowaniu. Możesz więc skonfigurować pojedynczą instancję szablonu JDBC, a następnie bezpiecznie wstrzyknąć to współużytkowane odniesienie do wielu DAO.
Powszechną praktyką podczas korzystania z klasy szablonu JDBC jest skonfigurowanie źródła danych w pliku konfiguracyjnym Spring, a następnie wstrzyknięcie współdzielonego komponentu bean DataSource do klas DAO. Szablon JDBC jest tworzony w programie ustawiającym dla źródła danych.
Obiekt dostępu do danych (DAO)
DAO oznacza Data Access Objectktóry jest powszechnie używany do interakcji z bazą danych. DAO istnieją, aby zapewnić środki do odczytu i zapisu danych w bazie danych i powinny udostępniać tę funkcjonalność poprzez interfejs, za pomocą którego reszta aplikacji będzie miała do nich dostęp.
Obsługa Data Access Object (DAO) w Spring ułatwia spójną pracę z technologiami dostępu do danych, takimi jak JDBC, Hibernate, JPA czy JDO.