IT rekvalifikace s garancí práce. Seniorní programátoři vydělávají až 160 000 Kč/měsíc a rekvalifikace je prvním krokem. Zjisti, jak na to!
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í.

2. diel - Návrh MySQL databázy v IntelliJ IDE

V minulom dieli, Úvod do databáz v Jave , sme si vysvetlili prečo je dobrý nápad pre prácu s dátami používať práve databázu. Hovorili sme si tiež, že v Jave sú pre prácu s databázou 2 hlavné prístupy: JDBC a JPA.

V dnešnom tutoriále si vytvoríme novú databázu, na ktorej sa v ďalších dieloch budeme učiť. Používať budeme databázu MySQL. Pokiaľ chcete v Jave pracovať s inou databázou, môžete si pokojne prečítať tento seriál, pretože SQL dotazy u rôznych databáz sú veľmi podobné a základné otázky dokonca úplne rovnaké.

Inštalácia databázy

Ako prvé samozrejme musíme mať databázu nainštalovanú. Pokiaľ sme s MySQL ešte nikdy nepracovali, mali by sme si najskôr prečítať seriál MySQL databázy krok za krokom, kde sa dozvieme všetko potrebné. MySQL databázu môžeme nainštalovať buď samostatne z webu http://dev.mysql.com/downloads/ alebo napr. v balíku XAMPP, kde je obsiahnutý aj jazyk PHP a databázový admin.

Inštalácia Database navigator

Database navigator je plug-in pre IntelliJ, ktorý umožňuje prezerať databázy priamo z IntelliJ IDE. Umožňuje tiež spúšťať SQL skripty, prezerať a upravovať jednotlivé databázy.

Aktuálna verzia pluginu Database Navigator však postráda schopnosť vytvárať a mazať databázy alebo tabuľky priamo v plugine.

Pre inštaláciu otvoríme v IntelliJ okienko plugins v hlavnom menu a do vyhľadávača napíšeme Database navigator "

Database navigator plugin - Databázy v Jave - JDBC - Databázy v Jave - JDBC

Práca s databázou v IntelliJ IDE

Akonáhle máme MySQL databázu nainštalovanú a spustenú, môžeme sa k nej pripojiť. Všetku administráciu budeme robiť cez IDE.

Pripojenie k MySQL databáze

Než spustíme Database navigator, je potrebné vytvoriť novú databázu. Otvoríme príkazový riadok alebo integrovaný terminál IntelliJ IDE alebo iný administračný nástroj pre MySQL. Najskôr sa pripojíme do samotného MySQL servera, spôsob pripojenia a prihlasovacie údaje sa môžu líšiť podľa databázy a konfigurácie. Pripojíte sa pomocou príkazu:

mysql -u root // Pro připojení jako root bez hesla
mysql -u root -p // Pro připojení jako root s heslem
mysql -u <přihlašovací jméno> -p // Pro připojení vámi zvolenými přihlašovacími údaji

Po pripojení vytvoríme novú databázu príkazom:

CREATE DATABASE slovnicek_db;

Po vytvorení databázy sa k nej môžeme pripojiť pomocou IntelliJ IDE. Po inštalácii Database navigator sa mám v postrannej lište objaví položka DB Browser. Kliknutím na ňu sa prepneme do nového okienka pre správu databáz. Kliknite na zelené + v hornej lište a otvorí sa nám panel preddefinovaných pripojení databáz. Vyberieme MySQL a otvorí sa nám prihlasovacie okno.

Port ponecháme nastavený na hodnotu 3306. Pri položke Host necháme voľbu localhost, čo znamená, že nám databáza beží na tom istom počítači, ako aplikácia. Užívateľské meno by sme mali mať nastavené na root, pokiaľ sme ho nemenili. Do hesla zadáme svoje heslo alebo ho ponecháme prázdne v prípade, že sme ho nezadávali.

Ďalej je potrebné nastaviť MySQL driver. Nastavíme Driver source na External library a položku Driver library na .jar súbor, ktorý sme predtým stiahli a uložili vo svojom systéme alebo do adresára lib/ v Java projekte.

Teraz sa k databáze pripojíme tlačidlom Apply. Pripojenie môžeme otestovať tlačidlom Test Connection, aby sme sa uistili, že sme zadali správne údaje:

Okienko pripojenia databázy pomocou Database navigator - Databázy v Jave - JDBC - Databázy v Jave - JDBC

Po úspešnom pripojení sa nám zobrazia všetky databázy a tabuľky uložené na MySQL serveri:

Načítané databázy po pripoení k MySQL - Databázy v Jave - JDBC - Databázy v Jave - JDBC

Vytvorenie tabuľky

O tabuľkách sme si už hovorili minule. Keďže budeme chcieť ukladať slovíčka, vytvoríme si tabuľku práve pre nich. Definujeme jej stĺpce – to sú vlastnosti, ktoré slovíčko má. Nezabudneme na unikátny identifikátor. Pre vytvorenie tabuľky sa najskôr musíme prepnúť do našej databázy, otvoriť príkazový riadok a vložiť príkaz:

USE slovnicek_db;

Následne vytvoríme novú tabuľku. Tabuľku pomenujeme slovo. Pridáme jej tri stĺpce. Ako prvý id typu INT. id nastavíme ako PRIMARY KEY, čím určíme tento stĺpec ako jednoznačný identifikátor slovíčka v tabuľke. Pridáme mu tiež hodnotu AUTO_INCREMENT, čím sa nastaví, aby sa jeho hodnota automaticky inkrementovala. Ďalej pridáme stĺpce cesky a anglicky. Budú typu VARCHAR. To je krátky text, pri ktorom musíme špecifikovať maximálnu veľkosť. Nastavíme mu dĺžku maximálne 50 znakov.

Do príkazového riadka vložíme príkaz pre vytvorenie novej tabuľky:

CREATE TABLE slovo (
    id INT PRIMARY KEY AUTO_INCREMENT,
    cesky VARCHAR(50) NULL,
    anglicky VARCHAR(50) NULL
);

Nakoniec sa vrátime do IntelliJ IDE a pravým kliknutím myši na našu databázu otvoríme novú ponuku, kde vyberieme položku Refresh. Týmto sa databáza znovu načíta a zobrazí sa nám vytvorená tabuľka. Tabuľku máme hotovú.

Pokiaľ vám tabuľka pripomína javovskú triedu, máte úplnú pravdu. Tabuľkou definujeme spoločné vlastnosti nejakých entít, tu slovíček. Jednotlivé stĺpce sú potom atribúty slovíčok. Pri triede by sme mali slovíčka ako inštancie, v databázovej tabuľke máme slovíčka ako jednotlivé riadky. Minule sme si tiež hovorili, že tabuľky je dokonca možné mapovať priamo na triedy pomocou JPA (Hibernate). Nepredbiehajme však.

Testovacie dáta

Teraz do tabuľky vložíme dáta. V DB Browseri rozklikneme naše nové pripojenie av okne Schemas nájdeme našu databázu slovnicek_db. Klikneme na Tables a na tabuľku s názvom slovo. Zobrazí sa nové okienko, ktoré nám umožňuje zobraziť dáta v tabuľke podľa nami určených filtrov. Zvolíme no filter a zobrazí sa nám nové prázdne okno:

Okienko zobrazenia tabuľky - Databázy v Jave - JDBC - Databázy v Jave - JDBC

Akonáhle programujeme nejakú databázovú aplikáciu, je dobrým zvykom pripraviť si testovacie dáta, na ktorých aplikáciu odladíme. Pomocou tlačidla Insert Records (zelené + v líšte nad tabuľkou) do tabuľky vložíme niekoľko testovacích záznamov.

Pridáme niekoľko nových riadkov, pri ktorých vyplníme stĺpce cesky a anglicky. Id sa vyplní automaticky. Nakoniec musíme dáta nahrať do databázy na MySQL server. Pre nahranie a uloženie dát stlačíme tlačidlo Commit v hornom paneli nad tabuľkou:

Nahranie testovacích dát to MySQL databázy v IntelliJ IDE - Databázy v Jave - JDBC - Databázy v Jave - JDBC

Databázu máme pripravenú, pokračovať budeme nabudúce.

Nabudúce, Databázy v Java JDBC - Výpis dát a parametre , sa na ňu z Javy pripojíme, necháme si vypísať slovíčka z databázy do konzoly a naprogramujeme slovníček, ktorý bude prekladať slovo, ktoré používateľ zadá.


 

Predchádzajúci článok
Úvod do databáz v Jave
Všetky články v sekcii
Databázy v Jave - JDBC
Preskočiť článok
(neodporúčame)
Databázy v Java JDBC - Výpis dát a parametre
Článok pre vás napísal David Hartinger
Avatar
Užívateľské hodnotenie:
1 hlasov
David je zakladatelem ITnetwork a programování se profesionálně věnuje 15 let. Má rád Nirvanu, nemovitosti a svobodu podnikání.
Unicorn university David sa informačné technológie naučil na Unicorn University - prestížnej súkromnej vysokej škole IT a ekonómie.
Aktivity