Sie können SQL- (Structured Query Language) in Java™-(SQLJ)-Anweisungen in Ihre Anwendungen integrieren, um die Effizienz von Transaktionen mit Ihren Datenbanken zu maximieren. Bevor Ihre Anwendungen SQLJ nutzen können, müssen Sie die Anwendung implementieren und die SQLJ-Profile anpassen, die erstellt werden.
Sie können Rational Application Developer oder das DB2-SQLJ-Umsetzungsprogramm verwenden, um die Anwendung zu übersetzen, bevor Sie sie
im Anwendungsserver implementieren.
Vorbereitende Schritte
Erstellen Sie eine SQLJ-Anwendung mit Rational Application Developer oder einem anderen Entwicklungstool.
Informationen zu diesem Vorgang
Zum Implementieren von SQLJ-Anwendungen die keine über Container realisierte Transaktionspersistenz
verwenden, müssen Sie die SQLJ-Anwendung zuerst übersetzen, um sie für die Anwendungsserverumgebung konfigurieren zu können. Passen Sie nach der Übersetzung die SQLJ-Profile im Anwendungsserver mit Scripting oder
mit dem Tool "db2sqljcustomizer" an.
Die SQLJ-Unterstützung für Anwendungen, die beangesteuerte Persistenz verwenden, umfasst die folgenden Features:
- SQLJ-Profile über die Administrationskonsole oder über Scripting anpassen und binden.
- SQLJ-Anwendungen erneut anpassen und binden, ohne die Anwendung erneut installieren zu müssen.
Vorgehensweise
- Optional: Erstellen Sie eine Sicherungskopie Ihrer Datei mit der Erweiterung ".java". Wenn Ihre Datei beispielsweise den Namen MeinServlet.java hat, kopieren Sie MeinServlet.java in MeinServlet.java.bkup.
- Optional: Benennen Sie Ihre Datei mit der Dateierweiterung ".java" in eine Datei mit der Dateierweiterung
.sqlj um. Wenn Ihre Anwendung beispielsweise ein Servlet mit dem Namen MyServlet.java ist, benennen Sie MyServlet.java in MyServlet.sqlj um.
- Optional: Editieren Sie die SQLJ-Datei, um die JDBC-Syntax in SQLJ-Syntax zu konvertieren. Wenn Sie SQLJ
verwenden, müssen Sie die richtigen Verbindungskontexte
angeben, da sonst die Verbindungsverwaltung nicht fehlerfrei funktioniert.
Konvertieren Sie beispielsweise die folgende JDBC-Operation:
Connection con = dataSource.getConnection();
Statement stmt = con.createStatement();
stmt.execute("INSERT INTO users VALUES (1, 'user1')");
con.commit();
wie folgt in SQLJ:
// Am Dateianfang, direkt unter den Importanweisungen, wird Connection_Context definiert.
#sql context Connection_context;
.
.
Connection con = dataSource.getConnection();
.
.
Connection_context ctx1 = new Connection_context(con);
.
.
#sql [ctx1] {INSERT INTO users VALUES (1, 'user1')};
.
.
con.commit(); ctx1.close();
Wenn Sie den SQLJ-Übersetzer ausführen, hat die erstellte Datei
mit der Dateierweiterung
.java denselben Namen wie Ihre alte Datei mit der Dateierweiterung
.java. Dies gewährleistet einen nahtlosen Übergang zur
SQLJ-Technologie.
- Kopieren Sie die Datei sqlj.zip aus Ihrer DB2-Installation in ein Verzeichnis auf Ihrer Workstation. Nehmen Sie die Datei
sqlj.zip in den Java-Erstellungspfad Ihrer Enterprise-Bean-JAR-Datei auf.
- Verwenden Sie Rational Application
Developer oder den DB2-SQLJ-Umsetzer, um SQLJ automatisch umzusetzen.
- Verwenden Sie Rational Application
Developer wie folgt:
- Klicken Sie im Projektnavigator mit der rechten Maustaste auf Ihr JAR-Projekt, und wählen Sie SQLJ-Unterstützung hinzufügen... aus.
- Wählen Sie die Kontrollkästchen für die Anwendungen aus, für die Sie SQLJ-Unterstützung wünschen.
- Geben Sie im Feld SQLJ-JAR-Datei den vollständig qualifizierten Pfad zur Datei sqlj.zip ein, die Sie zuvor auf Ihre Workstation
kopiert haben.
- Klicken Sie auf Fertig stellen.
- Exportieren Sie die EAR-Datei.
- Verwenden Sie den DB2-SQLJ-Umsetzer. Dieses Tool erstellt eine Version .java der Datei
mit der Dateierweiterung .sqlj und ein serialisiertes Profil mit der Erweiterung
.ser, das später für die Verarbeitung verwendet wird. Weitere Informationen zum SQLJ-Umsetzertool finden Sie in der
DB2-Dokumentation.
- Packen Sie Ihre JAR-Datei für die Unternehmensanwendung.
- Installieren Sie die Anwendung im Anwendungsserver, oder passen Sie die Profile mit dem
Tool "db2sqljcustomize" an.
- Passen Sie die Profile mit dem Anwendungsserver an.
- Packen Sie die JAR-Datei für Ihre Enterprise-Bean, Servlets und alle Dateien mit der Erweiterung .ser in ein
Unternehmensarchiv.
- Installieren Sie die Anwendung im Anwendungsserver, und passen Sie die SQLJ-Profile über die
Administrationskonsole oder mit dem Tool "wsadmin" an.
Fehler vermeiden: Wählen Sie während der Anwendungsinstallation nicht die Option
Enterprise-Beans implementieren in der Administrationskonsole aus. Wenn Sie die Enterprise-Beans über die Administrationskonsole erneut implementieren, gehen die vorgenommenen Anpassungsänderungen verloren.
gotcha
Der Anwendungsserver bietet erweiterte Unterstützung für SQLJ-Anwendungen. Installieren Sie die SQLJ-Anwendung
im Anwendungsserver. Anschließend können Sie SQLJ-Profile über die Administrationskonsole oder mit Scripting wie folgt anpassen und binden:- Wenn Sie die SQLJ-Profile über die Administrationskonsole anpassen möchten, lesen Sie den Artikel
zum Anpassen und Binden von Profilen für SQLJ-Anwendungen (Structured Query Language in Java).
- Wenn Sie die SQLJ-Profile mit Scripting anpassen möchten, lesen Sie den Artikel zur Befehlsgruppe für die Anwendungsinstallation für das Objekt
"AdminTask".
- Wenn Sie das Tool "db2sqljcustomize" verwenden, lesen Sie den Artikel zum Anpassen und Binden von
SQLJ-Profilen mit dem Tool "db2sqljcustomize".