Ako pripojiť databázu v jazyku Java? - Rozhrania a prevádzka JDBC

Obsah:

Anonim

Ako pripojiť databázu v jazyku Java?

Pri písaní IT aplikácie pomocou ľubovoľného programovacieho jazyka slúži tok údajov z a do aplikácie základným funkciám. Ak je tok údajov nejakým spôsobom ovplyvnený, môže to nepriaznivo ovplyvniť funkčnosť aplikácie a môže spôsobiť veľké straty podniku.

V súčasnosti sú k dispozícii rôzne metódy na pripojenie vášho programu k databáze s cieľom poskytnúť používateľom informácie, ktoré požadujú, zhromažďovať informácie od používateľov, odstraňovať informácie podľa požiadaviek používateľa a tiež aktualizovať údaje do databázy každý deň.

Budeme sa zaoberať jedným takým prístupom pomocou Java ako nášho programovacieho jazyka, JDBC ako metódy pripojenia k databáze a sledovaním objektovo orientovaného prístupu.

Čo je to JDBC?

JDBC je skratka pre Java Database Connectivity a pomáha programu Java vykonávať rôzne druhy operácií v databáze, ako napríklad vytvárať, čítať, aktualizovať a mazať. JDBC je tiež Java API.

Použitím JDBC by mal byť programátor schopný:

  • Nadviazanie spojenia s databázou
  • Spustite príkazy SQL ich odoslaním do databázy
  • Interpretuje výsledky, ktoré pochádzajú z databázy

Vytvorenie databázy na pripojenie databázy v Jave

Pred prácou s JDBC musíte mať databázu, aby ste sa k nej mohli pripojiť. Na ilustráciu použijeme databázu Oracle. Stiahnite si expresnú edíciu Oracle 11g z odkazu nižšie.

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

Už mám so sebou nainštalovaný inštalátor Oracle 10g, ako vidíte nižšie:

Zdroj : Z môjho počítača

  • Dvakrát kliknite na inštalačný program, objaví sa spodná obrazovka. Kliknite na tlačidlo Ďalej.

Zdroj : Z môjho počítača

  • Prijmite licenčnú zmluvu a kliknite na tlačidlo Ďalej.

Zdroj : Z môjho počítača

  • Ponechajte predvolené nastavenia tak, ako sú, a kliknite na tlačidlo Ďalej.

Zdroj : Z môjho počítača

  • Vyžiada si heslo, ktoré bude potrebné pri prihlásení do inštancie Oracle 11g. Zadajte heslo a kliknite na tlačidlo Ďalej.

Zdroj : Z môjho počítača

  • Po zadaní hesla sa začne proces inštalácie. Po dokončení inštalácie sa na ploche vytvorí ikona skratky. Ak ho nenájdete, choďte na spustenie systému Windows a vyhľadajte Oracle, mali by ste ho získať. Kliknite na ňu a prostredníctvom prehliadača sa pre vás otvorí tenký klient. Prihláste sa do inštancie. Upozorňujeme, že používateľské meno bude rovnaké pre Oracle DB, tj pre systém. Heslo bude také, aké ste zadali pri konfigurácii databázy.

Zdroj: Z môjho počítača

  • Po prihlásení bude prvá obrazovka, ktorá sa zobrazí, vyzerať takto:

Zdroj: Z môjho počítača

  • Teraz vytvorme tabuľku. Kliknite na modul SQL z vyššie uvedenej obrazovky a spustite dotaz uvedený nižšie.

Zdroj: Z môjho počítača

  • Ako vidíte, úspešne sme vytvorili tabuľku s názvom Educba.

Pripojte databázu v jazyku Java

Existuje niekoľko rozhraní a tried, ktoré sa používajú na pripojenie k databáze a vykonávanie operácií pomocou JDBC API.

Vysvetlíme jeden po druhom, ale dovoľte mi, aby som vám najskôr predstavil nasledujúci program:



Zdroj: Z môjho počítača

Nižšie sú uvedené rozhrania, ktoré použijeme na pripojenie k databáze a vykonávanie operácií s ňou:

  1. Manažér vodiča
  2. prípojka
  3. výkaz
  4. Výsledok bol nastavený
  5. Pripravené vyhlásenie

Pozrime sa na operácie, ktoré môžeme vykonať ako súčasť operácie JDBC.

  1. Uložte údaje z entity do databázy, tj operácie vytvorenia
  2. Načítajte údaje do entity alebo fazule z databázy
  3. Aktualizujte údaje o entite alebo fazuli v databáze
  4. Vymažte alebo odstráňte údaje o entite alebo fazuli z databázy.

Bez ohľadu na to, akú operáciu vykonávame, existujú niektoré základné kroky, ktoré by zostali rovnaké:

1. Vložte vodiča.

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

2. Vytvorte reťazec URL

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

3. Na vytvorenie pripojenia použite správcu ovládačov

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

4. Na vytvorenie príkazu použite odkaz Connection

stmt = conn.createStatement();

5. Na vykonanie dotazu použite príkaz

6. Spracovať sadu výsledkov (voliteľné, záleží)

7. Nakoniec uvoľnite prostriedky.

ilustrácie

Pretože na našom obrázku používame databázu Oracle, potrebujeme mať požadovaný ovládač, ktorý by mala poskytnúť spoločnosť Oracle. Trieda ovládača je zvyčajne vo forme súboru jar s názvom ojdbc14.jar. Tento ovládač by sa mal importovať do vášho programu java ako súčasť referenčných knižníc, ak tam nie je.

Ak ste nainštalovali produkt Oracle 11g do svojho priečinka C, v ideálnom prípade ho nájdete v nižšie uvedenej ceste: (Ak tam nie je, dá sa ľahko stiahnuť odtiaľto)

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

Zdroj: Z môjho počítača

Malo by byť k dispozícii veľa súborov jar, ale ojdbc14.jar je posledný. To isté sa dá použiť na náš účel. Táto nádoba by sa mala pridať na cestu projektu. Skontrolujte obrázok nižšie.

Zdroj: Z môjho počítača

Vytvorme tabuľku interpretov s nasledujúcimi atribútmi: (Môžete priamo spustiť príkazový riadok SQL, ktorý je dodávaný ako samostatný modul vydania Oracle Express. Najprv sa však musíte pripojiť a spustiť príkaz „connect“, aby ste sa pripojili k databázu.

Zdroj: Z môjho počítača

Ako súčasť tejto ilustrácie by sme vytvorili tri triedy javy, tj Artist.java, CreateTable.java a ArtistManagementDao.java, aby sme to dosiahli.

Aj vo vrstve java potrebujeme vytvoriť triedu nazvanú Artist bean. Táto trieda by mala mať atribúty interpreta v uvedenom kontexte. Vyzerá to takto:

Artist.java

Vytvorme ďalšie 2 triedy java s názvom ArtistManagementDao a CreateTable.java

ArtistManagementDao.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();
)
)
)
)

Vysvetlenie CreateTable.java:

1. Vytvorili sme najprv URL URL, ktoré by malo mať názov vášho počítača, ako aj číslo portu DB (ideálne 1521), pred ktorým je JDBC: oracle: thin: @. Potom sme vytvorili používateľské meno a heslo, aby sme tieto atribúty mohli odovzdávať počas pripojenia k databáze. Dôrazne sa odporúča šifrovať tieto hodnoty vo výrobnom prostredí.

2. V triede CreateTable.java sme vytvorili objekt „am“ a „a“ triedy ArtistManagementDao.java a Artist.java.

3. Potom sme sa pokúsili nadviazať spojenie podľa krokov, ktoré sme sa naučili predtým pomocou príkazu conn.

4. Potom sme vytvorili tabuľku s názvom Artist3 a aktualizovali databázu alebo ju pomocou príkazu vykonali.

5. Ak by sme chceli atribútom priradiť hodnoty, využijeme objekt, ktorý sme vytvorili pre triedu umelcov, a urobíme si poznámku, nie táto trieda vloží hodnotu do databázy, ale bude to ArtistmanagementDao trieda. Už máme uložené hodnoty v atribútoch a uvidíme v dennej triede, ako to preniesť do databázy.

6. Nakoniec sme použili objekt „am“ z ArtistManagementDao na odovzdanie tohto objektu „a“ metóde addArtist () triedy java ArtistManagementDao.

7. Tiež sme sa snažili chytiť blok na zachytenie akýchkoľvek výnimiek a vyhodenie toho istého.

ArtistManagementDao Vysvetlenie:

1. Trieda Dao nám pomáha izolovať aplikačnú / obchodnú vrstvu od vrstvy perzistencie. Toto je zvyčajne relačná databáza.

2. Vytvorili sme najprv URL URL, ktoré by malo mať názov vášho počítača, ako aj číslo portu DB (ideálne 1521), pred ktorým je JDBC: oracle: thin: @. Potom sme vytvorili používateľské meno a heslo, aby sme tieto atribúty mohli odovzdávať počas pripojenia k databáze. Dôrazne sa odporúča šifrovať tieto hodnoty vo výrobnom prostredí.

3. V rámci metódy addArtist sme sa pokúsili nadviazať spojenie podľa krokov, ktoré sme sa naučili predtým pomocou príkazu conn.

4. Teraz sme na vloženie hodnôt z atribútov do databázy použili metódu vloženia.

5. V nasledujúcom príkaze, aby sme mohli otestovať, máme príkaz get na načítanie hodnôt z databázy.

6. Tiež sme sa snažili chytiť blok na zachytenie akýchkoľvek výnimiek a ich vyhadzovanie.

Odporúčané články

Toto bol návod, ako pripojiť databázu v Java. Tu sme diskutovali o tom, ako pripojiť databázu v jave, spolu s rozhraniami a triedami používanými na pripojenie databázy. Ďalšie informácie nájdete aj v nasledujúcich článkoch -

  1. Čo je to SQL Server?
  2. Je veľká dáta databáza?
  3. Ako funguje JavaScript
  4. Otázky týkajúce sa viacerých vlákien v jazyku Java