Konfiguration des Computers
um mit dem Sambar-Server + RealJ + MySQL
Servlets mit Datenbankzugriff zu entwickeln und auszuführen
1.Ergänzung des j2sdk
Die Datei servlet.jar muss in
C:\j2sdk1.4.2_03\libeingefügt werden. Nur dann können Servlets kompiliert werden.
2. Ändern der Umgebungsvariablen für den
Sambar-Server
Umgebungsvariable (systemsteuerung/system/erweitert/umgebungsvariablen):
classpath:
C:\j2sdk1.4.2_03\lib\servlet.jar;C:\j2sdk1.4.2_03\jre\lib;C:\j2sdk1.4.2_03\jre\lib\rt.jar;
path:
...;C:\j2sdk1.4.2_03\jre\bin;C:\j2sdk1.4.2_03\jre\bin\server;
3. Zugriff auf die class-Datei vom Sambar-Server aus:
Die Datei servlt0.class muss im servlets-Verzeichnis stehen. Dann lautet der
Aufrufpfad des Servlets servlt0: servlet/servlt0. Also z.B. localhost/servlet/servlt0
Zugriff auf Dateien vom Servlet aus:
Basisverzeichnis ist sambar53 für admin (sambar53\bin für alle):Also z.B.
new FileReader("servlets/zaehler.txt")
wenn auf die Datei zaehler.txt im Verzeichnis servlets zugegriffen werden soll.
4. Zugriff auf MySQL-Datebanken von Servlets aus:
Der Treiber "mysql-connector-java-3.0.9-stable-bin.jar"
muss ins Verzeichnis j2sdkxx\jre\lib\ext gebracht werden.
Aufruf-Befehl im Servlet (Originalzitat):
Driver Class Name and JDBC URL Format The name of the
class that implements java.sql.Driver in MySQL Connector/J is 'com.mysql.jdbc.Driver'. The
'org.gjt.mm.mysql.Driver' class name is also usable to remain backwards-compatible with
MM.MySQL. You should use this class name when registering the driver, or when otherwise
configuring software to use MySQL Connector/J.
The JDBC URL format for MySQL Connector/J is as follows,
with items in square brackets ([, ]) being optional:
jdbc:mysql://[host][,failoverhost...][:port]/[database][?propertyName1][=propertyValue1][&propertyName2][=propertyValue2] ...If the hostname is not specified, it defaults to '127.0.0.1'. If the port is not specified, it defaults to '3306', the default port number for MySQL servers.
So siehts konkret aus:
try{Class.forName("com.mysql.jdbc.Driver");}
catch(ClassNotFoundException
cnfe){System.out.println("Fehler= "+cnfe.toString());}
String url = "jdbc:mysql://localhost/personal";
String username = "root";
String password = "";
Der alte Treiber 2.0.14 funktioniert nicht mit
j2sdk1.4.2_03. Wenn er trotzdem verwendet werden soll, muss das jdk1.3 installiert sein
und die Umgebungsvariablen müssen folgendermaßen lauten:
classpath
C:\jdk1.3\lib\servlet.jar;C:\jdk1.3\jre\lib;C:\jdk1.3\jre\lib\rt.jar;
path
...;C:\jdk1.3\jre\bin;C:\jdk1.3\jre\bin\classic;
5. Mit mehreren Benutzern arbeiten:
Wenn mehrere Benutzer (z.B. Schüler) Servlets schreiben, müssen sie sich das
servlets-Verzeichnis des Servers teilen. Sie müssen dann dort Unterverzeichnisse (z.B.
mypack, yourpack, hispack....) anlegen, in denen sie ihre Servlets ablegen.
Das Servlet myserv im Unterverzeichnis mypack kann aber
nicht mit
url/servlet/mypack/myserv
aufgerufen werden. Vielmehr wird dem Quelltext von myserv die Zeile
package mypack;
vorangestellt. Nach dem Kompilieren erfolgt der Aufruf mit
url/servlet/mypack.myserv