CodeGym /Java tanfolyam /All lectures for HU purposes /Csatlakozás az adatbázishoz Java alkalmazásból

Csatlakozás az adatbázishoz Java alkalmazásból

All lectures for HU purposes
Szint , Lecke
Elérhető

Java DataBase Connectivity

Ismeri az SQL alapjait. Ez jó. De ma még jobban fogod érezni magad. Ma elkezdi megtanulni, hogyan kell dolgozni egy adatbázissal egy Java alkalmazásból.

Nagyon sokféle DBMS létezik, ezért a Java alkotói úgy döntöttek, hogy szabványosítják a Java alkalmazások adatbázisokkal való működését. És ezt a szabványt JDBC- nek hívták : Java DataBase Connectivity .

A JDBC 3 fő interfésszel rendelkezik:

  • Kapcsolat - az adatbázishoz való csatlakozásért felelős
  • Nyilatkozat – az adatbázis lekérdezéséért felelős
  • ResultSet – felelős az adatbázis lekérdezésének eredményéért

Valójában ez minden. És még csak nem is fogjuk megtanulni minden interfész összes módszerét. Csak működő példák, amelyeket fokozatosan bonyolítunk.

A JDBC némileg hasonlít a szervletekkel való munkához. A JDBC megalkotói számos interfészt írtak, és büszkén nevezik Java DataBase API-nak. És ezeknek az interfészeknek a megvalósítását ... a DBMS megalkotóira bízták. Ott hogyan valósítják meg – senkit nem érdekel. Jól működik.

A JDBC-nek négy verziója van, és a legújabbat fogjuk megvizsgálni. És nem azért, mert ő a legmenőbb, hanem mert a legegyszerűbb.

JDBC illesztőprogram-kezelő

A Java alkalmazás és az adatbázis a JDBC Driver nevű könyvtáron keresztül kommunikál egymással. Ez a JDBC API-t egy adott DBMS-hez megvalósító osztályok készlete.

A megfelelő JDBC illesztőprogramot a DriverManager nevű osztály segítségével választja ki . Kölcsönhatásukat a következőképpen ábrázolhatjuk:

A helyzet az, hogy használhat In-Memory-DB-t, No-SQL-DB-t vagy akár egy Android-alkalmazásba épített adatbázist. Java fejlesztőként ezek az árnyalatok Önt egyáltalán nem érintik. A Driver Manager kiválasztja a megfelelő JDBC illesztőprogramot, és minden úgy fog működni, mint a karikacsapás.

Egyébként hogyan csinálja?

Csatlakozás a MySQL szerverhez

Emlékszel, mire volt szükség a helyi SQL-kiszolgálóhoz való csatlakozáshoz a MySQL Workbench segítségével? Ha elfelejtettem, akkor emlékeztetlek, három dologra volt szükséged:

  • házigazda
  • Belépés
  • Jelszó

Minden egyértelmű a bejelentkezési névvel és a jelszóval, és a gazdagép, ha emlékszel, annak a számítógépnek a neve, amelyen a szerver található. Ha a helyi számítógépen található, akkor meg kell adnia a localhost-ot gazdagépnévként. Mi van, ha nem helyi?

Ezután a ... URL-t kell használnia. Az URL a Universal Resource Locator rövidítése . Használható bárminek a helyének megadására a hálózaton: webhely, nyomtató, SQL szerver. Valójában az URL-t a helyi SQL-kiszolgáló eléréséhez is használják. Valahogy így néz ki:

mysql://localhost:3306/db_scheme
  • A mysql egy szerver protokoll
  • localhost - hosztnév a hálózaton
  • 3306 - port, amelyen a kérelmek készülnek
  • db_scheme - séma neve (adatbázis neve)

Jegyzet. Az adatbázis neve elhagyható. De ha a szerver sok adatbázissémát tárol, akkor általában különböző felhasználók és különböző hozzáférési jogosultságok jönnek létre számukra. És ha a felhasználó, akivel bejelentkezik az SQL szerverre, nem fér hozzá minden adatbázishoz, akkor feltétlenül meg kell adnia annak az adatbázisnak a nevét, amelyhez hozzáféréssel rendelkezik.

Ennek az url-nek a végén különböző paraméterek, kódolási típusok, időzóna szerepelhet, amelyek a létrehozandó új adatbázis-kapcsolat paramétereinek tekinthetők.

A protokoll lehet összetett is. Ha minden kommunikáció az adatbázis-kiszolgálóval SSH protokollt használó titkosított csatornán keresztül zajlik, akkor az URL a következőképpen adható meg:

ssh:mysql://localhost:3306/db_scheme

A protokoll nem feltétlenül külső program. Ha például egy JNDI protokollt használó szerverrel dolgozik, a következőképpen adhatja meg:

jndi:mysql://localhost:3306/db_scheme

És ha a JDBC API protokoll használatával szeretne dolgozni, akkor a következőképpen kell írnia:

jdbc:mysql://localhost:3306/db_scheme

Amikor megpróbál létrehozni egy adatbázis-kapcsolatot, a JDBC illesztőprogram-kezelő elemzi az SQL-db-URL-t, és meghatározza a JDBC illesztőprogram nevét a protokoll nevéből. Itt van egy ilyen kis trükk.

Hozzászólások
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION