Vydělávej až 160.000 Kč měsíčně! Akreditované rekvalifikační kurzy s garancí práce od 0 Kč. Více informací.
Hledáme nové posily do ITnetwork týmu. Podívej se na volné pozice a přidej se do nejagilnější firmy na trhu - Více informací.

Lekce 3 - Derby DB - Připojení k databázi

V dnešním tutoriálu se k databázi připojíme a to jak přes ij, tak přes Javu.

Připojení k databázi

Parametry připojení

Univerzální připojení (connection) používáme v případě připojení přes IJ k vypnuté databázi na localhostu. IJ nástroj databázi sám zapne. Tvar připojení je následující: jdbc:derby:databaseName;URLAttributes

V případě pokusu o síťové připojení k zapnuté databázi je tvar následující: jdbc:derby://server[:port]/databaseName[;URLAttributes=value[;...]]

  • databaseName - jméno databáze
  • URLAttributes - žádný, jeden nebo více URL parametrů
  • server - localhost, IP adresa (LAN, MAN, WAN)
  • port - TCP port, na kterém bude databázový server naslouchat

Nejzajímavější jsou URL atributy. Zde si uvedeme jen ty nejdůležitější. Zbylé se nacházejí v Reference DB.pdf v manuálu.

Atribut připojení Popis
bootPassword=heslo Heslo, např."fsd653EEER" pro zašifrovanou databázi
create=true Pokud je true a databáze neexistuje, pak se během připojení vytvoří
shutdown=true Pokud je true, tak to danou databázi vypne (ukončí)
databaseName=jméno databáze Označuje jméno databáze, se kterou chceme pracovat
user=uživatel Definujeme uživatele, který se chce k dané databázi připojit
password=heslo Zde definujeme heslo daného uživatele, který se přihlašuje
... parametrů je mnohem více ...

Připojení přes IJ nástroj

Spustíme jako administrátoři IJ nástroj (např. C:/ProgramFiles/JavaJDK/db/bin/ij.bat) a předvedeme si připojení do databáze. IJ nástroj se dá využít jak v případě spuštěného databázového serveru, tak i vypnutého serveru. V této části si předvedeme připojení při vypnuté databázi.

ij version 10.13
/****   pripojime se k databazi, pokud neexistuje vytvorime ji ****/
ij> connect 'jdbc:derby:databaze01;create=true;user=uzivatel1;password=heslo1';
/****   odpojime od databaze ****/
ij> disconnect;
/****   ukoncime ij program****/
ij> exit;

V případě, že databázový server bude spuštěn, je nutné do připojení zadat IP adresu.

ij version 10.13
ij> connect 'jdbc:derby://localhost:1527/databaze01;create=true;user=uzivatel1;password=heslo1';
ij> disconnect;
ij> exit;

Po provedení obou variant jsme právě vytvořili databázi se jménem databaze01, jejím vlastníkem neboli administrátorem je uživatel jménem uzivatel1 a jeho heslo je heslo1. Atribut url create=true říká, že pokud databáze neexistuje, pak je nutné ji vytvořit. Daný příkaz můžete provést ve Windows přes CMD nebo PowerShell, doporučuji jako administrátor, aby nevznikly problémy s právy přístupu.

Spuštění IJ pro Apache Derby - Derby DB

Připojení přes Javu

Opět si vytvoříme Java SE projekt v IDE. V tutoriálu budu používat Eclipse IDE. Zkontrolujeme, jestli máme Java perspektivu a vytvoříme projekt. V menu vybereme File -> New -> Java Project. Pojmenujeme projekt a nastavíme JRE Java8.

Vytvoreni Projektu - Derby DB

Jako další si přidáme externí knihovny do našeho projektu. Tzv. provedeme přidání knihoven do CLASSPATH. Jedná se o tyto externí knihovny:

  • derbyclient.jar
  • derbytools.jar
  • derbyoptional­tools.jar

Klikneme (označíme si) náš projekt a stiskneme ALT + ENTER nebo nahoře vybereme Project -> Properties. Zvolíme Java Build Path, vybereme záložku Libraries -> Add External JARs. Po přidání daných knihoven zvolíme APPLY a poté OK. Vpravo v Project Exploreru vidíme jaké *.jar se nám do projektu přidaly.

Nastavení Java projektu pro Apache Derby - Derby DB

Jako další si vyrobíme jednoduchou třídu, která se pouze připojí a odpojí k databázi. Opět přidáme parametr create=true, jenž nám zaručí, že se databáze vytvoří při spojení.

package pripojeni;
import java.sql.*;

public class PripojeniDERBY {

    private static Connection connect = null;
    static {
        try {          
            Class.forName("org.apache.derby.jdbc.ClientDriver").newInstance();
        } catch (InstantiationException | IllegalAccessException | ClassNotFoundException e) {
            System.out.println("Problem s nactenim driveru - nutne pridat do CLASSPATH");
        }
    }

    private static void pripojeniKDatabazi() {
        try {
            connect = DriverManager.getConnection("jdbc:derby://localhost:1527/databaze01;"
                    + "create=true;user=uzivatel1;password=heslo1");
        System.out.println("Podarilo se pripojit");
        } catch (Exception e) {
            System.err.println("Nepodarilo se pripojit");
        }
    }

    private static void odpojimeDatabazi() {
        try {
            if (connect != null) {
            connect.close();
        }
            System.out.println("Podarilo se odpojit od databaze");
        } catch (SQLException e) {
            System.out.println("Nepodarilo se odpojit od databaze");
            e.printStackTrace();
        }
    }

    public static void main(String[] args) {
        System.out.println("Start Programu");
        pripojeniKDatabazi();
        odpojimeDatabazi();
        System.out.println("Konec Programu");
    }
}

Nyní něco o zdrojovém kódu. Z důvodu zjednodušení jsou všechny proměnné a metody typu static. Ve statickém cyklu se pokusíme vytvořit instanci Driveru (Connectoru), který potřebujeme k databázi. Prakticky tento úsek není nutný, ale dávám jej tam pro test funkčnosti Connectoru. Sami vidíte, že s danou instancí již nikde nepracujeme. java.sql.Connect je objekt, který slouží k připojení k databázím. Před spuštěním daného kódu samozřejmě nezapomeňte spustit databázový server, jinak nedojde ke spojení a bude vyvolána výjimka.

Připojení k databázi - Derby DB

Když se podíváme do výpisu konzole, pak kontrolní výpisy potvrdily úspěšné vytvoření databáze. Potvrzení je provedeno přes výpis do příkazového řádku, kde si můžeme všimnout vzniku adresáře databaze01, který slouží jako adresář databáze.

Kontrola výpisu databáze - Derby DB

Příště, Derby DB - Možnosti připojení, si rozebereme spuštění databázového serveru přes Javu a možnosti přihlašování k databázi.


 

Stáhnout

Stažením následujícího souboru souhlasíš s licenčními podmínkami

Staženo 437x (2.99 kB)

 

Předchozí článek
Kvíz - Nastavení, zapnutí a vypnutí Derby DB v Javě
Všechny články v sekci
Derby DB
Přeskočit článek
(nedoporučujeme)
Derby DB - Možnosti připojení
Článek pro vás napsal Robert Michalovič
Avatar
Uživatelské hodnocení:
2 hlasů
Programuji převážně v Javě SE,EE a trochu nativním C a CUDA. více viz.https://cz.linkedin.com/in/robert-michalovic
Aktivity