This site requires JavaScript, please enable it in your browser!
Greenfoot back
seelensauger
seelensauger wrote ...

2013/2/19

Connect with a Database

seelensauger seelensauger

2013/2/19

#
Hey I want to connect my Greenfoot Project with a Database. I have a few Questions: 1. Is it possible? 2. Do you need a other Programm to connect? 3. How does it work? What I have until now: I have a Database in my localhost with is called Leutkaefer. I want to connect the Project with this. The Table i want to try out with (I added this to the Database) is called Klimazonen. the row are called: name(String), Feuchtigkeit(int), Licht(int), Wärme(int) If you have Questions pleas just ask. I hope what i worte here helps you.
danpost danpost

2013/2/19

#
Java has both 'java.sql' and 'javax.sql' packages that can help with what you want to accomplish. Please refer to the Java API documentation on these packages.
seelensauger seelensauger

2013/2/21

#
ok now i have the problem to connect with the jdbc driver: my system: mac os X 10.7 path to the .jar: /Users/thomaswinter/Desktop/Leuchtkäfer Martin/Leuchtkäfer/mysql-connector-java-5.1.23/mysql-connector-java-5.1.23-bin.jar (the folder Leuchtkäfer is the Greenfoot Project) error i get: java.lang.ClassNotFoundException: /Users/thomaswinter/Desktop/Leuchtkäfer Martin/Leuchtkäfer/mysql-connector-java-5.1.23/mysql-connector-java-5.1.23-bin.jar my code:
import greenfoot.*;  // (World, Actor, GreenfootImage, Greenfoot and MouseInfo)
import java.sql.*; 
/**
 * Um eine Verbindung mit der Datenbank aufzunehmen ist diese Klasse notwendig.
 * http://www.ralphhenne.de/informatik/kaffeehandel/03DBZugriff.pdf
 * 
 * @Martin Specker
 * @18.2.2013
 */
public class Datenbankverbindung extends Grundklasse
{
    private final String treiber = "/Users/thomaswinter/Desktop/Leuchtkäfer Martin/Leuchtkäfer/mysql-connector-java-5.1.23/mysql-connector-java-5.1.23-bin.jar";
    private String dBase = "jdbc:mysql://localhost/";
    private String benutzer;
    private String passwort;
    private Connection con;
    private Statement stmt;
    private String dBaseH = "Leuchtkaefer";
    /** Konstruktor stellt die Daten zum Verbindungsaufbau  zusammen.*/
    public Datenbankverbindung(String benutzerH, String passwortH)
    {
        //Stellt die Daten zusammen, um eine Verbindung aufzubauen.
        dBase = dBase + dBaseH;
        benutzer = benutzerH;
        passwort = passwortH;
    }
    
    public void act() 
    {
        
    }
    
    public void erstelleVerbindung()
        {
        try {
            //Laedt den Datenbanktreiber
            Class.forName(treiber);
            //Stellt die Verbindung her
            con = DriverManager.getConnection(dBase,  benutzer, passwort);
            //Erzeugt ein Objekt fuer Abfragen und Aenderungen der Datenbank
            stmt =  con.createStatement();
        }
        catch (ClassNotFoundException  cnfe) {
            System.out.println(cnfe.toString());
        }
        catch (SQLException sqle) {
            System.out.println(sqle.toString());
        }
    }
    
    public void schliesseVerbindung()
    {
        try {
            stmt.close();
            con.close();
        }
        catch (SQLException sqle) {
            System.out.println(sqle.toString());
        }
    }
}
You need to login to post a reply.