Csatlakozás MySQL adatbázishoz JDBC-vel
Adatkapcsolat megnyitása
Az adatbázis kapcsolat létrehozásához először regisztráljuk a driver-t a programban.
Class.forName("com.mysql.jdbc.Driver");
Majd a DriverManager.getConnection( url, felhasználónév, jelszó ) metódussal hozzuk létre a Connection típusú kapcsolatot. Az URL-t itt String-ben adtuk meg, nem közvetlen a metódusba írtuk.
String url = "jdbc:mysql://localhost:3306/pelda";
Connection con = DriverManager.getConnection(url, "root", "");
Ne feledkezzünk meg arról, hogy a program végén zárjuk le az adatbázis kapcsolatot!
con.close();
SQL lekérdezés végrehajtása
Az SQL lekérdezés lefuttatásához létrehozunk egy Statement példányt a Connection osztály createStatement() metódusával. A metódus paraméter nélkül, illetve bizonyos opciók megadásával is meghívható. Jelen esetben itt beállítjuk azt, hogy az olvasott adatok csak olvashatóak (nem módosítjuk őket).
Statement stmt = con.createStatement(ResultSet.TYPE_SCROLL_INSENSITIVE, ResultSet.CONCUR_READ_ONLY);
ResultSet rs = stmt.executeQuery("SELECT * from varosok");
Megjegyezzük, hogy az Statement.executeQuery() metódus csak lekérdezésekhez használható. A visszatérési értéke egy ResultSet típusú objektum.
Lekérdezések eredményeinek listázása
A lekérdezés eredményeinek listázásához a ResultSet halmaz elemeit kell végignézni. A ResultSet.next() metódusa a halmaz következő elemére lép, és true (igaz) értékkel tér vissza, ha található még benne elem, és false (hamis) értékkel tér vissza, ha minden elemet megvizsgáltunk. Az aktuális sor oszlopait a típusainak megfelelő metódussal kérhetjük le, amely paramétereként meg kell adni az oszlop nevét.
String id = rs.getString("id");
String vnev = rs.getString("varosnev");
String megye = rs.getString("megye");