będąc jednym z najbardziej znanych języków programowania, zapewnia szerokie wsparcie dla baz danych. Pomaga nam łączyć się z różnymi bazami danych za pośrednictwem (Łączność z bazą danych Java). W tym artykule opowiem, jak połączyć się z bazą danych i wykonywać zapytania za pomocą JDBC.
Poniższe tematy są omówione w tym artykule:
Wprowadzenie do JDBC
JDBC to jeden ze standardowych interfejsów API języka Java do niezależnych od bazy danych połączeń między platformami oraz szeroką gamę baz danych.Ten interfejs API umożliwia kodowanie instrukcji żądania dostępu w formacie Strukturalny język zapytań (SQL). Topolega głównie na otwieraniu połączenia, tworzeniu bazy danych SQL, wykonywaniu zapytań SQL, a następnie dotarciu do danych wyjściowych.
Interfejs API JDBC umożliwia dostęp do danych tabelarycznych przechowywanych w dowolnej relacyjnej bazie danych. Dzięki temu możesz aktualizować, zapisywać, pobierać i usuwać dane z baz danych. Jest podobny do Open Database Connectivity (ODBC) dostarczanego przez firmę Microsoft.
Aby lepiej zrozumieć działanie JDBC, zagłębmy się w ten temat i zrozummy architekturę, która kryje się za łącznością z bazą danych Java.
Wspólne komponenty JDBC
Interfejs API JDBC zapewnia następujące interfejsy i klasy & minus
DriverManager: Służy głównie do zarządzania listą sterowników baz danych. Do nawiązania połączenia z bazą danych zostanie użyty sterownik, który rozpoznaje określony protokół podrzędny.
Kierowca to interfejs obsługujący komunikację z serwerem bazy danych. Abstrahuje również szczegółyktóre są skojarzone podczas pracy z obiektami sterownika.
Połączenie jest interfejsem zawierającym wszystkie metody wymagane do połączenia się z bazą danych. Obiekt połączenia zajmuje się funkcjami komunikacyjnymi bazy danych. kontekst.
Przejdźmy teraz do następnego tematu i przyjrzyjmy się krokom wymaganym do utworzenia aplikacji JDBC.
Kroki tworzenia aplikacji JDBC
Aby stworzyć aplikację JDBC, musisz wykonać kilka kroków. Zobaczmy, czym one są.
Importuj paczki: Musisz dołączyć wszystkie pakiety, które zawierają potrzebne klasy JDBC programowanie baz danych . Najczęściej przy użyciu import java.sql. * wystarczy.
Zarejestruj sterownik JDBC: Tutaj musisz zainicjować sterownik, aby móc otworzyć kanał komunikacyjny z bazą danych.
Otwórz połączenie: Tutaj możesz użyć getConnection () metody, aby utworzyć obiekt Connection, który reprezentuje fizyczne połączenie z bazą danych.
Wykonaj zapytanie: W rzeczywistości wymaga to użycia obiektu typu Statement do zbudowania i przesłania instrukcji SQL do bazy danych.
Wyodrębnij dane ze zbioru wyników: Sugeruje się użycie odpowiedniego getXXX () metoda pobierania danych z zestawu wyników.
Oczyść środowisko: Tutaj jest to niezbędnejawnie zamknij wszystkie zasoby bazy danych zamiast polegać na czyszczeniu pamięci maszyny JVM.
Teraz, gdy widziałeś różne kroki związane z tworzeniem aplikacji JDBC, zobaczmy przykładowy kod do tworzenia bazy danych i ustanawiania połączenia.
pakiet Edureka import java.sql. * import java.sql.DriverManager klasa publiczna Przykład {// nazwa sterownika JDBC i adres URL bazy danych statyczny końcowy String JDBC_DRIVER = 'com.mysql.jdbc.Driver' static final String DB_URL = 'jdbc: mysql: // localhost / emp '// Poświadczenia bazy danych static final String USER =' root 'static final String PASS =' 'public static void main (String [] args) {Connection conn = null Statement stmt = null try {// KROK 2 : Zarejestruj sterownik JDBC Class.forName ('com.mysql.cj.jdbc.Driver') // KROK 3: Otwórz połączenie System.out.println ('Łączenie z bazą danych ...') conn = DriverManager.getConnection (DB_URL , 'root', '') // KROK 4: Wykonaj zapytanie System.out.println ('Tworzenie instrukcji ...') stmt = conn.createStatement () String sql sql = 'SELECT id, first, last, age FROM Employees 'ResultSet rs = stmt.executeQuery (sql) // KROK 5: Wyodrębnij dane z zestawu wyników while (rs.next ()) {// Pobierz według nazwy kolumny int id = rs.getInt (' id ') int age = rs.getInt ('wiek') Pierwszy ciąg znaków = rs.getString ('pierwszy') Ciąg last = rs.getString ('last') // Wyświetlane wartości System.out.print ('ID:' + id) System.out.print (', Age:' + age) System.out.print (', First : '+ first) System.out.println (', Last: '+ last)} // KROK 6: Oczyszczanie środowiska rs.close () stmt.close () conn.close ()} catch (SQLException se) {// Obsługa błędów dla JDBC se.printStackTrace ()} catch (Exception e) {// Obsługa błędów dla Class.forName e.printStackTrace ()} w końcu {// wreszcie blok używany do zamknięcia zasobów try {if (stmt! = null) stmt.close ()} catch (SQLException se2) {} // nic nie można zrobić try {if (conn! = null) conn.close ()} catch (SQLException se) {se.printStackTrace ()} // koniec w końcu spróbuj} // koniec try System.out.println ('Do widzenia!')} // koniec main} // koniec Przykład
Powyższy kod tworzy tabelę w bazie danych localhost. Aby wstawić wartości do utworzonej bazy danych, możesz skorzystać z poniższego kodu. Będę pisać kod tylko do kroku 4. Reszta kodu pozostaje taka sama jak powyżej.
// KROK 4: Wykonaj zapytanie System.out.println ('Tworzenie tabeli w danej bazie danych ...') stmt = conn.createStatement () String sql = 'CREATE TABLE EMPLOYEES' + '(id INTEGER not NULL,' + 'first VARCHAR (255),' + 'last VARCHAR (255),' + 'age INTEGER,' + 'PRIMARY KEY (id))' stmt.executeUpdate (sql) System.out.println ('Utworzona tabela w danej bazie danych ... ') System.out.println (' Wstawianie rekordów do tabeli ... ') stmt = conn.createStatement () String sql =' INSERT INTO Employees VALUES (100, 'Kriss', 'Kurian', 18) 'stmt.executeUpdate (sql) sql =' INSERT INTO Employees VALUES (101, 'Enrique', 'John', 25) 'stmt.executeUpdate (sql) sql =' INSERT INTO Employees (102, 'Taylor', 'Swift' , 30) 'stmt.executeUpdate (sql) sql =' INSERT INTO Employees VALUES (103, 'Linkin', 'Park', 28) 'stmt.executeUpdate (sql) System.out.println (' Wstawiono rekordy do tabeli. .. ”)
W ten sposób można nawiązać połączenie z bazą danych i wstawić wartości do tabel. Przejdźmy teraz dalej i poznajmy różne typy sterowników JDBC
Typy sterowników JDBC
Sterowniki JDBC służą do implementacji zdefiniowanych interfejsów w interfejsie API JDBC do interakcji z serwerem bazy danych.Zasadniczo a Sterownik JDBC robi trzy rzeczy, a są one następujące:
1. Ustanawia połączenie ze źródłem danych.
2. Będzie wysyłać zapytania i instrukcje aktualizacji do źródła danych.
3. Na koniec przetwarza wyniki.
Na przykład sterowniki JDBC pomagają otworzyć połączenie z bazą danych w celu interakcji z nią przez wysyłanie . Jeśli chcesz dowiedzieć się więcej o typach sterowników JDBC, możesz zapoznać się z tym artykułem na temat .
Przejdźmy teraz dalej i poznajmy JDBC Connections.
Połączenia JDBC
Importuj pakiety JDBC: Dodaj import oświadczenia do twojego aby zaimportować wymagane klasy do kodu Java.
Zarejestruj sterownik JDBC: W t jego krok, w celu załadowania żądanej implementacji sterownika do pamięci, aby mógł on realizować żądania JDBC. Istnieją 2 sposoby rejestracji kierowcy.
Samouczek dotyczący usług integracji serwera sql
Najbardziej odpowiednim podejściem do zarejestrowania sterownika jest użycie języka Java forName () metoda dynamicznego ładowania pliku klasy sterownika do pamięci , który automatycznie go rejestruje. Ta metoda jest odpowiednia, ponieważ umożliwia skonfigurowanie i przenoszenie rejestracji sterownika. Spójrz na poniższy kod:
try {Class.forName ('oracle.jdbc.driver.OracleDriver')} catch (ClassNotFoundException ex) System.out.println ('Błąd: nie można załadować klasy sterownika!') System.exit (1)}
Drugim podejściem, którego można użyć do zarejestrowania sterownika, jest użycie statycznej registerDriver () metoda.
try {Driver myDriver = new oracle.jdbc.driver.OracleDriver () DriverManager.registerDriver (myDriver)} catch (ClassNotFoundException ex) {System.out.println ('Błąd: nie można załadować klasy sterownika!') System.exit (1 )}
Powinieneś użyć registerDriver () metoda, jeśli używasz maszyny JVM niezgodnej z JDK, takiej jak ta dostarczona przez firmę Microsoft. Tutaj każdy formularz wymaga bazy danych URL .
Formułowanie adresu URL bazy danych: Sformułowanie adresu URL jest niezbędne do utworzenia odpowiednio sformatowanego adresu wskazującego bazę danych, z którą chcesz się połączyć. Po załadowaniu sterownika możesz nawiązać połączenie za pomocą pliku DriverManager.getConnection () metoda. Metody DriverManager.getConnection () to & minus
getConnection (adres URL ciągu)
getConnection (adres URL ciągu, właściwość właściwości)
getConnection (String url, String user, String password)
- Utwórz obiekt połączenia
Możesz utworzyć połączenie przy użyciu adresu URL bazy danych, nazwy użytkownika i hasła, a także za pomocą obiektu właściwości.
- Blisko
Wreszcie, aby zakończyć sesję bazy danych, musisz zamknąć wszystkie połączenia z bazą danych. Jeśli jednak zapomnisz, moduł odśmiecania pamięci Javy zamknie połączenie, gdy wyczyści nieaktualne obiekty.
conn.close () // Służy do zamykania połączenia
To wszystko dotyczyło łączności z bazą danych Java. Jeśli chcesz dowiedzieć się więcej o JDBC, możesz zapoznać się z tym artykułem na . To prowadzi nas do końca artykułu o „łączeniu się z bazą danych”. Mam nadzieję, że rzuciłem trochę światła na twoją wiedzę o JDBC.
Sprawdź autorstwa Edureka, zaufanej firmy zajmującej się edukacją online, z siecią ponad 250 000 zadowolonych uczniów rozsianych po całym świecie. Jesteśmy tutaj, aby pomóc Ci na każdym etapie Twojej podróży, aby zostać oprócz tych pytań do rozmowy kwalifikacyjnej w języku Java, opracowaliśmy program nauczania przeznaczony dla studentów i profesjonalistów, którzy chcą zostać programistą Java.
Masz do nas pytanie? Wspomnij o tym w sekcji komentarzy tego artykułu „Jak połączyć się z bazą danych”, a my skontaktujemy się z Tobą tak szybko, jak to możliwe.