Aria

Apache Derby – tutorial

Apache Derby – konfiguracja bazy danych

Ustawienia wstępne

Sprawdzenie instalacji JDK

Mam Windows 10, JDK 16.0.1

Musimy mieć poprawnie zainstalowane JDK. JDK jest poprawnie zainstalowane jeżeli:

  • W wierszu poleceń (cmd) po wpisaniu polecenia java -version uzyskamy prawidłowe informacje o środowisku (Rys. 1)
  • Masz ustawioną zmienną JAVA_HOME. Więcej o JAVA_HOME.
  • W zmiennej Path wpis dotyczący JAVA_HOME poprzedza wpis ‘javapath’ (Rys. 2). W przypadku, gdy ‘javapath’ poprzedza JAVA_HOME masz dostęp jedynie do kilku narzędzi JDK, chociaż polecenie java -version prawidłowo pokazuje wersję JDK. Więcej o zmiennej PATH.
Wynik uruchomienia polecenia java -version
Rys. 1. Wynik uruchomienia polecenia java -version
Kolejność wpisów w zmiennej Path
Rys. 2. Prawidłowa kolejność wpisów w zmiennej PATH

Ustawienie zmiennej DERBY_HOME

Ustawiamy zmienną DERBY_HOME na główny folder instalacji bazy danych Apache Derby. Zakladam, że jest to C:\Derby.

Zmienną możemy ustawić tymczasowo albo na stałe.

Ustawienie tymczasowe

Otwieramy linie poleceń. Wpisujemy polecenia jak na poniższym obrazku (Rys. 242):

Apache derby konfiguracja
Rys. 242. Ustawienie DERBY_HOME tymczasowo

Pierwsze polecenie ustawia wartość zmiennej systemowej DERBY_HOME.

Drugie polecenie sprawdza ustawienie zmiennej.

Ustawienie jest tymczasowe – działa do czasu zamknięcia linii poleceń.

Ustawienie stałe

W oknie zmiennych systemowych dodajemy nowa zmienną (Rys. 243):

Apache Derby - konfiguracja
Rys. 243. Ustawienie DERBY_HOME na stał

Uruchamiamy linię poleceń i sprawdzamy wartość zmiennej używając polecenia echo %DERBY_HOME%. Jeśli linia poleceń pokaże C:\Derby zmienna jest ustawiona na stałe.

Uruchamianie narzędzi bazy danych

Narzędzia ij, dblook oraz sysinfo bazy danych możemy uruchomić na kilka sposobów.

Uruchomienie za pomocą derbyrun.jar

Archiwum derbyrun.jar musi być umieszczone w tym samym folderze co inne archiwa Derby.

Rys. 244. Uruchomienie sysinfo z derbyrun.jar

Inne narzędzia i serwer uruchamiamy podobnie:

java -jar %DERBY_HOME%\lib\derbyrun.jar ij
java -jar %DERBY_HOME%\lib\derbyrun.jar sysinfo
java -jar %DERBY_HOME%\lib\derbyrun.jar dblook

Te polecenia mogą mieć argumenty. Omówimy je przy omawianiu tych narzędzi.

Uruchomienie przy użyciu skryptów *.bat

Aby móc korzystać z tego sposobu musimy w zmiennej PATH wskazać położenie folderu C:\Derby\bin. Możemy to uczynić tymczasowo lub na stałe.

Ustawienie tymczasowe
Apache Derby konfiguracja
Rys. 245. Uruchomienie sysinfo z sysinfo.bat
Ustawienie na stałe

PATH (Rys. 246):

Apache Derby - konfiguracja
Rys. 246. Uzupełnienie zmiennej Path

Uruchamiamy okno linii poleceń i wpisujemy polecenie sysinfo. Jeśli zadziała – informacja w zmiennej PATH jest prawidłowo dodana.

Uruchomienie przy użyciu pełnej składni polecenia java

Musimy wskazać położenie plików archiwów Derby w zmiennej CLASSPATH, jeżeli nie korzystamy z modularyzacji albo w zmiennej MODULEPATH, jeśli korzystamy z modularyzacji.

Zmienne MODULEPATH i CLASSPATH możemy ustawić tymczasowo lub na stałe jak opisano tutaj dla CLASSPATH.

Zakładam, że zmienną MODULEPATH masz ustawioną na stałe.

Biblioteki niezmodularyzowane możemy ustawić wyłącznie w CLASSPATH. Biblioteki zmodularyzowane powinniśmy ustawić w MODULEPATH.

CLASSPATH v. MODULEPATH
Cecha CLASSPATH MODULEPATH
modularyzacja Prowadzi do bibliotek niezmodularyzowanych Prowadzi do bibliotek zmodularyzowanych
biblioteki w postaci JAR JAR, folder modułu
nazwa Nazwa zwyczajowa. Przynależy do JDK i Windows. Nazwa dowolna.
przykład ścieżki .;%DERBY_HOME%\lib\tools.jar; .;%DERBY_HOME%\lib\tools.jar;
Wywołanie narzędzia z cmd java org.apache.derby.tools.ij java -p %MODULEPATH% -m org.apache.derby.tools/org.apache.derby.tools.ij
Zmienna CLASSPATH

Zmienna wyglądałaby tak: .;%DERBY_HOME%\lib\derby.jar;%DERBY_HOME%\lib\derbyclient.jar;%DERBY_HOME%\lib\derbyLocale_pl.jar;%DERBY_HOME%\lib\derbynet.jar;DERBY_HOME%\lib\derbyoptionaltools.jar;%DERBY_HOME%\lib\derbyrun.jar;%DERBY_HOME%\lib\derbyshared.jar;%DERBY_HOME%\lib\derbytools.jar;

Zmienna MODULEPATH

Wygląda dokładnie identycznie. Różni się tylko nazwą.

Użycie pełnej składni polecenia java
Bez użycia modularyzacji

Z linii poleń wpisujemy jedno z poleceń wymienionych poniżej

java org.apache.derby.tools.sysinfo

java org.apache.derby.tools.dblook

java org.apache.derby.tools.ij

Z użyciem modularyzacji

Z linii poleceń wpisujemy jedno z poleceń wymienionych poniżej

java -p %MODULEPATH% -m org.apache.derby.tools/org.apache.derby.tools.sysinfo

java -p %MODULEPATH% -m org.apache.derby.tools/org.apache.derby.tools.dblook

java -p %MODULEPATH% -m org.apache.derby.tools/org.apache.derby.tools.ij

Użycie Derby w aplikacji Java uruchamianej z linii poleceń

Musimy mieć ustawioną zmienną CLASSPATH i/lub MODULEPATH.

Pokażę to w oddzielnym wpisie.

Użycie Derby w aplikacji uruchamianej z IDE

Możemy pominąć wszystkie wyżej opisane sposoby. W IDE tworzymy bibliotekę, zawierającą odniesienia do archiwów JAR.