Supportnet Computer
Planet of Tech

Supportnet / Forum / Datenbanken

java applet zugriff auf mysql db! wie??





Frage

und da fällt mir noch was ein, in einem projekt ham wir mit "odbc" auf eine access db zugreifen lassen... (soviel zu den grenzen meiner java kenntnisse) wir haben eigentlich versucht, mit einem java aplett was man im browser darstellen kann, auf eine mysql db zuzugreifen. das klappte leider nicht :-( punkt ist auf einer internetseite soll ein aplett laufen was auf ne mysql db zugreift... aber wie... wenn jemand eine gute doku kennt... würd mich über einen link freuen. thx

Antwort 1 von RMC

schau mal auf

www.dokuwelt.de (Dokus zu sehr vielen Programmiersprachen)
java.sun.com (lade dir die Java-API herunter wenn du das nicht eh schon getan hast)

greetz, RMC

Antwort 2 von semi

ODBC setzt voraus, dass lokal auf dem Client eine ODBC Quelle eingerichtet ist. Mit JDBC geht's.
Das ganze aber nur, wenn das Applet signiert ist und ein gültiges Zertifikat hat. Die "default"-Policies von JRE erlauben keine Socket-Verbindung (Sandbox).
JDBC-Treiber für mySQL findest Du auf der mySQL Seite.

Gruß,
Michael


Antwort 3 von raben.lazarus

naja, das wussten wir schon trotzdem danke..
dieses thema ist so umständlich, das ich gehofft hatte irgendwo ne schritt für schritt anleitung zu finden, leider fehlanzeige...

wat solls dann basteln wir halt weiter
...gracias

Antwort 4 von semi

Hier ein einfaches Beispiel, wie Du auf MySQL zugreifen kannst.
Den Treiber findest Du, wie ich schon geschrieben habe, auf der Mysql-Seite.
(mysql-connector-java-3.0.8-stable.zip bzw. mysql-connector-java-3.0.8-stable-bin.jar aus dem ZIP)
import java.sql.DriverManager;
import java.sql.Connection;
import java.sql.SQLException;
import java.sql.Statement;
import java.sql.ResultSet;
import java.sql.ResultSetMetaData;

public class MySQLTest {
  public static void main(String[] args) {
    String driver   = "org.gjt.mm.mysql.Driver";
    String url      = "jdbc:mysql://localhost/DATENBANKNAME";
    String user     = "USER";
    String password = "PASSWORD";

    try {
      // Treiber laden
      Class.forName(driver);
    }
    catch(Exception e) {
      System.err.println(e.getMessage());
      System.exit(0);
    }

    Connection connection = null;
    Statement statement = null; 
    try {
      // Verbindung zur DB
      connection = DriverManager.getConnection(url, user, password);
      statement = connection.createStatement();
      String query = "SELECT * FROM TABELLE";
      // Daten holen
      ResultSet result = statement.executeQuery(query);
      if(result!=null) {
        // Spaltenüberschriften ausgeben
        ResultSetMetaData rsmd = result.getMetaData();
        for(int i=1; i<=rsmd.getColumnCount(); i++) {
          System.out.print(rsmd.getColumnName(i));
          System.out.print((char)9);
        }
        System.out.println();

        // Abfrageergebnisse ausgeben
        result.beforeFirst();
        while(result.next()) {
          for(int column=1; column<=rsmd.getColumnCount(); column++) {
            System.out.print(result.getObject(column));
            System.out.print((char)9);
          }
          System.out.println();
        }
        result.close();
      }
    }
    catch(SQLException e) {
      System.err.println(e.getMessage());
    }
    finally {
      if(statement!=null) { 
        try { statement.close(); } catch(Exception e) {}
      }
      if(connection!=null) { 
        try { connection.close(); } catch(Exception e) {} 
      }
    }
  }
}
Auf ähnliche Art kannst von einem Applet aus auf die DB zugreifen.
Wie Du das ganze organisierst, ist wieder andere Geschichte. Ich würde Dir empfehlen komplett auf Applets zu verzichten und JSP oder Servlets mit einem J2EE-Server dahinter zu verwenden .
Aber mache was Du wolle :-)

Gruß,
Michael

Antwort 5 von raben.lazarus

ich danke dir,

jsp ist wohl die richtung in die ich mich schlau machen werde..

Ich möchte kostenlos eine Frage an die Mitglieder stellen:


Ähnliche Themen:


Suche in allen vorhandenen Beiträgen: