JDBC ( Java DataBase Connectivity) je rozhranie tried v Jave,
ktoré slúžia na komunikáciu s rôznymi SQL databázami.
Tri hlavné veci ktoré JDBC umožnuje sú :
vytvorenie spojenia s databázou
posielanie SQL dotazov
získavanie a spracovanie resultov
Architektúra JDBC
Použitie JDBC
Vytvorenie spojenia s databázou :
Najprv je potrebné natiahnuť špecifický ovladač pre databázu do ktorej chceme pristupovať.
To sa vykoná príkazom:
Class.forName("myDriver.ClassName");
Napríklad pre MySQL to bude:
Class.forName("com.mysql.jdbc.Driver");
To je vlastne umiestnenie danej triedy v balikovej hierarchii.
Ked je ovladac natiahnuty, vytvoríme inštanciu objektu Connection použitím
Connection con = DriverManager.getConnection(
"jdbc:mySubprotocol:myDataSource", username, password);
Opäť príklad pre MySQL:
Connenction con = DriverManager .getConenction(
"jdbc:mysql://hostname:3306/database", username, password);
Vytvorenie SQL príkazov
Na zasielanie SQL dotazov databázovému serveru sa používa objekt Statement.
Na vytvorenie objektu Statement je potrebné aktívne spojenie, objekt Statement
je vrátený zavolaním metody createStatement objektu Connection.
Statement stmt = con.createStatement() ;
CREATE/INSERT/UPDATE dotazy
Na vykonanie týchto dotazov sa používa metóda executeUpdate.
Napríklad:
stmt.executeUpdate("CREATE TABLE users(username VARCHAR(8), password VARCHAR(20));");
stmt.executeUpdate("INSERT INTO users VALUES('Jozef', 'Jozef');");
SELECT dotazy
Na získavanie a spracovanie výsledkov databázových dotazov sa používa objekt ResultSet,
ktorý je vrátený zavolaním metódy executeQuery objektu Statement
ResultSet rs = stmt.executeQuery("SELECT * FROM users;");
Vypísanie vysledku na štandardný výstup potom môže vyzerať napríklad takto:
while(rs.next()) {
String username = rs.getString("username");
String password = rs.getString("password");
System.out.println("User:"+username+" Password"+password+"\n");
}
Konfiguračné záležitosti
Príklady
Servlety
Servlet sources
Vytvorenie tabuľky:
source
Pridávanie údajov do databázy:
source
Vyýber údajov z databázy:
source
Aktualna verzia tychto stranok je na http://skmi.science.upjs.sk/~radiohead/jdbc/