U kunt voor toegang tot DB2-databases Java-programma's ontwikkelen met de juiste JDK (Java Development Kit) op AIX, HP-UX, Linux, OS/2, Silicon Graphics IRIX, Solaris of Windows 32-bits besturingssystemen. De JDK (Java Development Kit) bevat JDBC (Java Database Connectivity), een dynamische SQL API voor Java.
Voor JDBC-ondersteuning in DB2 moet u de component DB2 Java Enablement inschakelen als u de DB2-client installeert. Met JDBC-ondersteuning voor DB2 kunt u JDBC-toepassingen en -applets maken en uitvoeren. Deze bevatten alleen dynamische SQL-instructies en maken gebruik van een Java-aanroepinterface om SQL-instructies door te geven aan DB2.
De DB2 SDK (DB2 Software Developer's Kit) biedt ondersteuning van ingesloten SQL-instructies voor Java (SQLJ). Met DB2 SQLJ- en DB2 JDBC-ondersteuning kunt u SQLJ-toepassingen en -applets maken en uitvoeren. Deze bevatten statische SQL-instructies en maken gebruik van ingesloten SQL-instructies die zijn verbonden met de DB2-database.
Java kan ook op de server worden gebruikt voor het maken van opgeslagen procedures voor JDBC en SQLJ en door de gebruiker gedefinieerde functies (UDF's).
Voor het maken en uitvoeren van verschillende typen Java-programma's is ondersteuning vereist van verschillende componenten van DB2:
Zie Application Building Guide voor gedetailleerde informatie over het maken en uitvoeren van JDBC- en SQLJ-programma's. Raadpleeg voor aanvullende informatie over het programmeren van DB2 in Java de Application Development Guide. Hierin vindt u informatie over het maken en uitvoeren van JDBC- en SQLJ-toepassingen, applets, opgeslagen procedures en UDF's.
Bekijk voor de meest recente, bijgewerkte informatie over DB2 Java de webpagina op de locatie:
http://www.software.ibm.com/data/db2/java
Om DB2 Java-programma's te maken en uit te voeren, moet de juiste versie van de JDK (Java Development Kit) op uw computer worden geïnstalleerd en geconfigureerd:
Raadpleeg voor informatie over het installeren en configureren van een van de bovenstaande JDK's:
http://www.software.ibm.com/data/db2/java
Voor alle ondersteunde platforms moet u daarnaast een DB2-client installeren en configureren met behulp van de component DB2 Java Enablement. Om een bind uit te voeren tussen SQLJ-programma's en een database, moet u een DB2 Beheerclient met de component DB2 Java Enablement installeren en configureren.
Voor het uitvoeren van opgeslagen procedures of UDF's van DB2 Java, moet u daarnaast de configuratie van DB2 Database Manager bijwerken om het pad op te nemen waar JDK Versie 1.1 is geïnstalleerd op de computer die u bij het ontwikkelen gebruikt. U kunt dit doen met behulp van de volgende opdracht:
db2 update dbm cfg using JDK11_PATH /home/smith/jdk11
waarbij /home/smith/jdk11 het pad is waar JDK Versie 1.1 is geïnstalleerd.
U kunt de configuratie van DB2 Database Manager controleren om de juiste waarde voor het veld JDK11_PATH te bepalen door de volgende opdracht op te geven:
db2 get dbm cfg
Wellicht wilt u de uitvoer naar een bestand sluizen om deze gemakkelijker te kunnen bekijken. Het veld JDK11_PATH staat aan het begin van de uitvoer. Raadpleeg voor meer informatie over deze opdrachten de publicatie Command Reference.
![]() | Op Solaris-systemen werken sommige implementaties van JVM (Java Virtual
Machine) niet goed in programma's die in een "setuid"-omgeving worden
uitgevoerd. Mogelijk kan de gemeenschappelijke bibliotheek
libjava.so, die de Java-interpreter bevat, niet worden
geladen. U kunt als tijdelijke oplossing symbolische koppelingen maken
voor alle benodigde gemeenschappelijke bibliotheken van JVM in
/usr/lib, met behulp van een opdracht zoals de volgende
(afhankelijk van de locatie waar Java op uw computer is geïnstalleerd):
ln -s /opt/jdk1.1.3/lib/sparc/native_threads/*.so /usr/lib Raadpleeg voor meer informatie over deze en andere tijdelijke oplossingen: http://www.software.ibm.com/data/db2/java/v5/faq.html |
Voor het uitvoeren van Java-programma's worden de volgende omgevingsvariabelen automatisch bijgewerkt tijdens de installatie van DB2 onder OS/2 en Windows, en tijdens het maken van een subsysteem op UNIX-platforms.
Op UNIX-platforms:
Op Windows- en OS/2-platforms:
Om SQLJ-programma's te maken en uit te voeren, wordt CLASSPATH ook automatisch bijgewerkt om de volgende bestanden op te nemen:
Op UNIX-platforms:
Op Windows- en OS/2-platforms:
Start de toepassing vanaf het Bureaublad (Windows), de Werkplek (OS/2) of de opdrachtregel door het uitvoeren van de Java-interpreter op het uitvoerbare programma met de volgende opdracht:
java prog_naam
waarbij prog_naam de naam is van het programma.
Het JDBC DB2-stuurprogramma verwerkt de JDBC API-aanroepen van uw
toepassing en gebruikt DB2 CAE om de verzoeken aan de server door te geven en
de resultaten te ontvangen.
![]() | Een SQLJ-toepassing moet aan de database gekoppeld zijn voordat deze kan worden uitgevoerd. |
Omdat Java-applets via het web worden geleverd, moet er een webserver op uw DB2-computer worden geïnstalleerd (server of client).
Controleer, voordat u de applet uitvoert, of het .html-bestand correct is geconfigureerd. Start de JDBC-appletserver via de TCP/IP-poort die is opgegeven in het .html-bestand. Als u bijvoorbeeld:
param name=port value='6789'
hebt opgegeven, voert u het volgende in:
db2jstrt 6789
Controleer of uw werkdirectory toegankelijk is voor de webbrowser. Als dit niet het geval is, kopieert u de .class- en .html-bestanden van uw applet naar een directory die toegankelijk is. Maak daarnaast voor SQLJ-applets een kopie van de profielbestanden met de toevoegingen .class en .ser.
Kopieer het bestand sqllib/java/db2java.zip naar dezelfde directory als de andere bestanden. Kopieer voor SQLJ-applets ook het bestand sqllib/java/runtime.zip in deze directory. Start vervolgens de webbrowser op uw clientmachine (die ondersteuning biedt voor JDK 1.1) en laad het bestand .html.
Als uw applet de JDBC API aanroept om een verbinding tot stand te brengen
met DB2, brengt het JDBC-stuurprogramma via de JDBC-appletserver op de
DB2-server de communicatie tot stand met de DB2-database.
![]() | Een SQLJ-applet moet via een bindopdracht met de database zijn verbonden voordat deze kan worden uitgevoerd. |