Jak połączyć bazę danych w Javie?

Podczas pisania aplikacji informatycznej w dowolnym języku programowania przepływ danych zi do aplikacji spełnia podstawowe funkcje. Jeśli w jakiś sposób wpłynie to na przepływ danych, może to negatywnie wpłynąć na funkcjonalność aplikacji i może spowodować dużą stratę dla firmy.

Obecnie dostępne są różne metody łączenia programu z bazą danych w celu zapewnienia użytkownikom żądanych informacji, zbierania informacji od użytkowników, usuwania informacji zgodnie z wymaganiami użytkownika, a także codziennej aktualizacji danych do bazy danych.

Przyjrzymy się jednemu z takich podejść, używając Java jako naszego języka programowania, JDBC jako metody łączności z bazą danych i stosując podejście obiektowe.

Co to jest JDBC?

JDBC oznacza Java Database Connectivity i pomaga programowi Java wykonywać różne operacje na bazie danych, takie jak tworzenie, czytanie, aktualizacja i usuwanie. Ponadto JDBC to Java API.

Korzystając z JDBC, programista powinien być w stanie:

  • Nawiąż połączenie z bazą danych
  • Uruchom polecenia SQL, wysyłając je do bazy danych
  • Interpretuje wyniki pochodzące z bazy danych

Tworzenie bazy danych w celu połączenia bazy danych w Javie

Przed rozpoczęciem pracy z JDBC wymagana jest baza danych, aby się z nią połączyć. Będziemy korzystać z bazy danych Oracle na potrzeby naszej ilustracji. Proszę pobrać oracle 11g express edition z poniższego linku.

https://www.oracle.com/technetwork/products/express-edition/overview/index-100989.html

Mam już gotowy instalator Oracle 10g, jak widać poniżej:

Źródło : Z mojego pulpitu

  • Kliknij dwukrotnie instalator, pojawi się poniższy ekran. Kliknij Następny.

Źródło : Z mojego pulpitu

  • Zaakceptuj umowę licencyjną i kliknij przycisk Dalej.

Źródło : Z mojego pulpitu

  • Zachowaj ustawienia domyślne i kliknij przycisk Dalej.

Źródło : Z mojego pulpitu

  • Zostaniesz poproszony o podanie hasła, które będzie wymagane podczas logowania do instancji Oracle 11g. Podaj hasło i kliknij Dalej.

Źródło : Z mojego pulpitu

  • Po podaniu hasła rozpocznie się proces instalacji. Po zakończeniu instalacji na ekranie komputera zostanie utworzona ikona skrótu. Jeśli nie możesz go znaleźć, przejdź do Windows start i wyszukaj Oracle, powinieneś go zdobyć. Kliknij na niego, a otworzy się cienki klient za pośrednictwem przeglądarki. Zaloguj się do instancji. Należy pamiętać, że nazwa użytkownika będzie taka sama dla Oracle DB, tj. System. Hasło będzie tym, które podałeś podczas konfigurowania bazy danych.

Źródło: Z mojego pulpitu

  • Teraz po zalogowaniu pierwszy ekran, który zobaczysz, będzie wyglądał jak poniżej:

Źródło: Z mojego pulpitu

  • Teraz stwórzmy stół. Kliknij moduł SQL na powyższym ekranie i uruchom poniższe zapytanie.

Źródło: Z mojego pulpitu

  • Jak widać, z powodzeniem stworzyliśmy stół o nazwie Educba.

Połącz bazę danych w Javie

Istnieje kilka interfejsów i klas używanych do łączenia się z bazą danych i wykonywania operacji za pomocą interfejsu API JDBC.

Wyjaśnimy jeden po drugim, ale pozwól mi najpierw przedstawić ci następujący program:



Źródło: Z mojego pulpitu

Poniżej znajdują się interfejsy, których będziemy używać do łączenia się z bazą danych i wykonywania na niej operacji:

  1. Kierownik kierowcy
  2. Połączenie
  3. Komunikat
  4. Zestaw wyników
  5. Przygotowane oświadczenie

Przyjrzyjmy się operacjom, które możemy wykonać jako część operacji JDBC.

  1. Przechowuj dane z encji do bazy danych, tj. Operacji tworzenia
  2. Pobierz dane do encji lub fasoli z bazy danych
  3. Zaktualizuj dane encji lub komponentu bean w bazie danych
  4. Usuń lub usuń dane jednostki lub fasoli z bazy danych.

Bez względu na to, jaką operację wykonujemy, istnieją pewne podstawowe kroki, które pozostałyby takie same:

1. Załaduj sterownik.

Class. forName ("oracle.jdbc.driver.OracleDriver");

2. Utwórz ciąg adresu URL

String url="jdbc:oracle:thin:@172:.26.132.40:1521:orclilp";

3. Użyj menedżera sterowników, aby utworzyć połączenie

con=DriverManager.getConnection(URL, USERNAME, PASSWORD);

4. Użyj odwołania do połączenia, aby utworzyć instrukcję

stmt = conn.createStatement();

5. Użyj instrukcji, aby wykonać zapytanie

6. Przetwórz zestaw wyników (opcjonalnie, zależy)

7. Uwolnij zasoby w końcu zablokuj.

Ilustracja

Ponieważ w naszej ilustracji korzystamy z bazy danych Oracle, musimy mieć wymagany sterownik, który powinien dostarczyć Oracle. Klasa sterownika ma zwykle postać pliku jar o nazwie ojdbc14.jar. Ten sterownik należy zaimportować do programu Java w ramach „Bibliotek odniesienia”, jeśli go tam nie ma.

Jeśli zainstalowałeś Oracle 11g w swoim folderze C, najlepiej go znaleźć w poniższej ścieżce: (Jeśli go nie ma, możesz go łatwo pobrać stąd)

C: \ oraclexe \ app \ oracle \ product \ 10.2.0 \ server \ jdbc \ lib

Źródło: Z mojego pulpitu

Powinno być dostępnych wiele plików jar, jednak najnowszy jest plik ojdbc14.jar. To samo można wykorzystać do naszych celów. Ten słoik należy dodać do ścieżki klas projektu. Sprawdź poniższy obraz.

Źródło: Z mojego pulpitu

Utwórzmy tabelę wykonawców z następującymi atrybutami: (Możesz bezpośrednio uruchomić wiersz poleceń SQL, który jest osobnym modułem edycji Oracle Express. Ale najpierw musisz się połączyć i możesz wykonać polecenie „połącz”, aby połączyć się z baza danych.

Źródło: Z mojego pulpitu

W ramach tej ilustracji stworzylibyśmy trzy klasy Java, tj. Artist.java, CreateTable.java i ArtistManagementresent.java, aby to osiągnąć.

Również w warstwie java musimy stworzyć klasę o nazwie Artist bean. Ta klasa powinna mieć atrybuty Artysty w powyższym kontekście. Będzie to wyglądać jak poniżej:

Artist.java

Utwórzmy 2 inne klasy Java o nazwach ArtistManagementexe i CreateTable.java

ArtistManagementresent.java

package com;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.SQLException;
public class ArtistManagementDao (
private final static String DRIVERNAME="oracle.jdbc.driver.OracleDriver";
private final static String URL="jdbc:oracle:thin:@LENOVO-PC:1521:XE";
private final static String USERNAME="System";
private final static String PASSWORD="Your DB password";
private Connection con =null;
public void addArtist(Artist a)
(
try (
Class.forName(DRIVERNAME);
String sql="insert into Artist1 values (?, ?)";
con=DriverManager.getConnection(URL, USERNAME, PASSWORD);
PreparedStatement pst=con.prepareStatement(sql);
pst.setString(1, a.getArtistID());
pst.setString(2, a.getArtistName());
pst.executeUpdate();
) catch (ClassNotFoundException e) (
// TODO Auto-generated catch block
System.out.println(e);
) catch (SQLException e) (
System.out.println(e);
)
)
)

CreateTable.java

package com;
import java.sql.*;
public class CreateTable(
static final String DB_URL = "jdbc:oracle:thin:@LENOVO-PC:1521:XE";
static final String USER = "System";
static final String PASS = "Your DB Password";
public static void main(String() args) (
Connection conn = null;
Statement stmt = null;
try(
ArtistManagementDao am=new ArtistManagementDao();
Artist a=new Artist();
Class.forName("oracle.jdbc.driver.OracleDriver");
System.out.println("Connecting to a selected database…");
conn = DriverManager.getConnection(DB_URL, USER, PASS);
System.out.println("Connected to database successfully");
System.out.println("Creating table");
stmt = conn.createStatement();
//ARTIST TABLE
String sql = "CREATE TABLE Artist3 " +
"(ArtistID varchar2(5) primary key not NULL, " +
" ArtistName varchar2(25))";
stmt.executeUpdate(sql);
System.out.println("Created table in given database…");
a.setArtistId("abc");
a.setArtistName("ankit");
am.addArtist(a);
System.out.println("\nArtistID="+a.getArtistID()+"\nArtistName="+a.getArtistName());
)catch(SQLException se)(
se.printStackTrace();
)catch(Exception e)(
e.printStackTrace();
)finally(
try(
if(stmt!=null)
conn.close();
)catch(SQLException se)(
)
try(
if(conn!=null)
conn.close();
)catch(SQLException se)(
se.printStackTrace();
)
)
)
)

CreateTable.java Objaśnienie:

1. Najpierw stworzyliśmy adres URL DB, który powinien mieć nazwę twojego komputera, a także numer portu DB (najlepiej 1521), poprzedzony JDBC: oracle: thin: @. Następnie utworzyliśmy nazwę użytkownika i hasło, aby przekazać te atrybuty podczas połączenia z bazą danych. Zdecydowanie zaleca się szyfrowanie tych wartości w środowisku produkcyjnym.

2. W klasie CreateTable.java stworzyliśmy obiekt „am” i „a” odpowiednio z klas ArtistManagement Simulator.java i Artist.java.

3. Następnie próbowaliśmy nawiązać połączenie, wykonując kroki, których nauczyliśmy się wcześniej za pomocą instrukcji conn.

4. Następnie utworzyliśmy tabelę o nazwie Artist3 i zaktualizowaliśmy bazę danych lub przekazaliśmy ją do bazy danych, używając instrukcji wykonania.

5. Teraz, jeśli chcielibyśmy przypisać wartości do atrybutów, skorzystamy z obiektu, który stworzyliśmy dla klasy artysty i zanotujemy, że to nie ta klasa wstawi wartość do bazy danych, a raczej będzie Zajęcia dla wykonawców. Na razie mamy już zapisane wartości w atrybutach i zobaczymy w klasie dziennej, jak przekazać to do bazy danych.

6. Na koniec użyliśmy obiektu „am” z ArtistManagementexe, aby przekazać ten obiekt „a” do metody addArtist () klasy JavaManager ArtistManagement Simulator.

7. Próbowaliśmy również złapać blok w celu wychwycenia wyjątków i wyrzucenia tego samego.

WykonawcaManagera Wyjaśnienie:

1. Klasa Dao pomaga nam odizolować warstwę aplikacji / biznesu od warstwy trwałości. Jest to zwykle relacyjna baza danych.

2. Najpierw stworzyliśmy adres URL DB, który powinien mieć nazwę twojego komputera, a także numer portu DB (najlepiej 1521), poprzedzony JDBC: oracle: thin: @. Następnie utworzyliśmy nazwę użytkownika i hasło, aby przekazać te atrybuty podczas połączenia z bazą danych. Zdecydowanie zaleca się szyfrowanie tych wartości w środowisku produkcyjnym.

3. W metodzie addArtist próbowaliśmy nawiązać połączenie, wykonując kroki, których nauczyliśmy się wcześniej za pomocą instrukcji conn.

4. Teraz użyliśmy metody insert do wypychania wartości z atrybutów do bazy danych.

5. W następnej instrukcji, w celu przetestowania, mamy instrukcję get, aby pobrać wartości z bazy danych.

6. Próbowaliśmy również złapać blok w celu wychwycenia wyjątków i wyrzucenia tego samego.

Polecane artykuły

To był przewodnik, jak podłączyć bazę danych w Javie. Tutaj omówiliśmy Jak połączyć bazę danych w Javie wraz z interfejsami i klasami używanymi do łączenia bazy danych. Możesz także przejrzeć następujące artykuły, aby dowiedzieć się więcej -

  1. Co to jest SQL Server?
  2. Czy Big Data to baza danych?
  3. Jak działa JavaScript
  4. Pytania do wywiadu wielowątkowego w Javie

Kategoria: