Announcement

Collapse
No announcement yet.

kein Standardtreiber/MySQL/JDBC

Collapse
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • kein Standardtreiber/MySQL/JDBC

    <pre>
    Hallo zusammen,

    ich möchte gerne noch mal ein paar Fragen zur Datenbankeinrichtung MySQL/JDBC stellen.
    Ein beliebtes Thema für (uns) Anfänger, und leider immer nur in
    Profimanier gelöst.
    <p>
    Meine Connection sieht wohl so aus wie bei jedem:
    <p>
    static String url = "jdbc:mysql://localhost:3306/Eintrag_unter_System-DSN";
    static String user = "d";
    static String password = "e";

    static{
    try{
    Class.forName(driver);
    }
    catch(ClassNotFoundException e){
    e.printStackTrace();
    }
    }
    public static Connection getConnection() throws SQLException{
    Connection connection=DriverManager.getConnection(url, user, password);
    return connection;
    }
    <p>
    Das ganze soll bei mir als Bean von einer JSP aufgerufen werden, wobei ich schon
    vorab erste vernichtende Fehlermeldungen erhalte:
    <p>
    Servlet Exception Has Occurred
    Exception Report:
    javax.servlet.ServletException: [Microsoft][ODBC Driver Manager] Datenquellenname nicht gefunden und kein Standardtreiber angegeben
    <p>
    Als Treiber habe ich mir mysql-connector-java-3.0.8-stable.tar.gz runtergeladen und entpackt.
    <p>
    Aber was sind das nun für Classpaths, die noch gesetzt werden müssen?
    <p>
    Kann vielleicht jemand einem Anfänger erklären welche .jar Datei dort wohin kopiert werden muss (im Treiber gibt es 3),
    und wo der classpath eingetragen wird(autoexec.bat ist bei mir unter NT leer!?)?
    <p>
    Besten Dank,
    Michael
    </pre>

  • #2
    <pre>
    hallo zusammen,
    da ich dieses und andere foren in letzter zeit viel genervt habe, will ich auch
    mal was an feedback zurückgeben.
    <p>
    mein problem war folgendes:
    Ich wollte mittels JSP eine HTML-ausgabe einer MySQL-datenbank(3.23)-tabelle machen.
    das datenbankprogramm habe ich dafür in eine bean ausgelagert. das ganze lief auf tomcat 4.0-b5.
    <p>
    insgesamt hatte ich wohl sämtliche fehlermeldungen von:
    "Datenquellenname nicht gefunden und kein Standardtreiber angegeben"
    bis "no suitabel driver"!
    <p>
    das wichtigste vorweg: tomcat nach JEDER änderungen runterfahren und neu starten.
    es reicht nicht zB. den work-ordner zu löschen.
    <p>
    meine .jsp habe ich hier reingelegt:
    tomcat/webapps/examples
    meine bean(s) haben in der ersten quellcodezeile folgendes package: "package beans;"
    die java-dateien(beans) musste ich nun an 2 stellen (fürs kompilieren) unterbringen.
    <p>
    erste stelle:
    tomcat/webapps/examples/WEB-INF(achtung gross geschrieben)/classes/beans
    den beans-ordner habe ich natürlich selber angelegt. Als ich nun versuchte
    zu kompilieren, erhielt ich fehlermeldungen. daher musste ich unter den
    ordner beans einen zweiten ordner anlegen, also:
    <p>
    zweite stelle:
    tomcat/webapps/examples/WEB-INF/classes/beans/beans
    erst als hier die java-Dateien(beans) lagen, konnte ich an erster stelle kompilieren (???)
    so, nun habe ich mir einen treiber heruntergeladen:
    http://www.mysql.de/downloads/index.html und hier den
    MySQL Connector/J3.0 production release (tar.gz)
    <p>
    wenn man den entpackt, dann erhält man einen ordner namens:
    mysql-connector-java-3.0.8-stable. alles was sich IN diesem
    ordner befindet muss in folgenden ordner:
    tomcat/webapps/examples/WEB-INF/lib (den lib-ordner bitte wieder selber anlegen)
    <p>
    das waren die voraussetzungen. die java-bean dazu sieht wie folgt aus:
    <p><p>

    package beans;

    import java.sql.*;

    public class ConnectionManager{
    static String driver = "org.gjt.mm.mysql.Driver";
    static String url = "jdbc:mysql://127.0.0.1:3306/test_ms/article";
    static String user = "d";
    static String password = "e";
    static{
    try{
    Class.forName(driver);

    }
    catch(ClassNotFoundException e){
    e.printStackTrace();
    }
    }

    public static Connection getConnection() throws SQLException{
    Connection connection=DriverManager.getConnection(url, user, password);
    return connection;
    }
    }
    <p>
    Anm:
    statt 127.0.0.1 kann (wohl) auch localhost stehen, da hatte ich aber eine
    karambolage mit einer anderen anwendung die auf port:8080 lief.
    test_ms/article ist der Datenbankname/Tabellenname also unter den in
    MySQL auch die Tabelle angesprochen wird um sie zu füllen.
    <p>
    so, ich hoffe, dass ich nichts vergessen habe.
    durchhalten und "keine macht den computern!"
    so long,
    michael
    </pre&gt

    Comment

    Working...
    X