Zielony Smok - logo witryny

Baza danych w ścieżce klas

Umieszczenie bazy w ścieżce klas

Gdy umieścimy bazę danych w pliku *.zip albo *.jar możemy umieścić ten plik w ścieżce klas CLASSPATH (Rys. 289).

Baza danych w ścieżce klas
Rys. 289

Użytkowanie bazy w ścieżce klas

Łączymy się z bazą danych:

jdbc:derby:classpath:sciezka_do_bazy

W naszym przykładzie:

jdbc:derby:classpath:baza_urzedow

Klasa R096_classpath.java

Nie zapomnij wyeksportować pakietu z poniższą klasą

package aderby.specyf;

import aderby.DerbyUtil;

import java.sql.*;

public class R096_classpath {
    private static final String baza = "baza_urzedow";
    private static final String selectData = "SELECT * FROM urzad";

    public static void main(String[] args) {
        System.out.println(System.getProperty("java.class.path"));
        DerbyUtil.setReadOnlyProps();
        DerbyUtil.startDerbyEngine(DerbyUtil.embdriver);
        Connection conn = DerbyUtil.connectClasspathDB(baza, "");
        Statement stat = null;
        ResultSet rs = null;
        try {
            stat = conn.createStatement();
            rs = stat.executeQuery(selectData);
            while (rs.next()) {
                System.out.println(rs.getString(1) + " | " + rs.getString(2));
            }
        } catch (SQLException e) {
            e.printStackTrace();
        }
        DerbyUtil.close(stat);
        DerbyUtil.close(conn);
        DerbyUtil.close(rs);
        DerbyUtil.shutdownEmbeddedDB(baza);
        DerbyUtil.shutdownDerbyEngine();

    }
}
Wynik
.;C:\Przyklady\baza_urzedow.jar;
   C:\Program Files (x86)\QuickTime\QTSystem\QTJava.zip;
1 | Nazwa urzędu
2 | Urząd Skarbowy
3 | Urząd Skarbowy
4 | Urząd Skarbowy
...

Pliki do ściągnięcia

Aktualny (tworzony narastająco) plik module-info.java

Aktualny (tworzony narastająco) plik DerbyUtil.java

Pliki tworzone narastająco zastępują poprzednie pliki o tej samej nazwie i działają dla wszystkich wcześniej opublikowanych przykładów we wszystkich wpisach w projekcie. W przypadku pliku module-info.java może być potrzebne skreślenie niepotrzebnych wpisów.