Datenbankanbindung generell

Snaiper

Mitglied
Liebe Community,

ich habe jetzt schon weng was gelesen von Datenbankanbindungen unter Eclipse, da ich aber mit BlueJ arbeite (Eclipse ist mir nochnicht so geheuer ;D ) bin ich jetzt denk ich etwas aufgeschmissen.

Sollte es dennoch gehen sowas mit BlueJ zu programmieren, kann mir da vielleicht bitte jemand behilflich sein?:bahnhof:

Ich habe zwar das Vorgehen zum Verbindungsaufbau mal gelesen, aber funktionieren tut da garnichts :noe:

Vielen Dank jetzt schonmal,

Snaiper
 

nieselfriem

Bekanntes Mitglied
Vielleicht sollte du mal ein paar Zeilen Code posten, was du schon gemacht hast. Da man dir sonst kaum sagen kann, wo es hapert. Das ist in etwa so, du fragst im Mathematik Unterricht einfach nur die Frage in den Raum "Warum?". Da weiß auch keiner, wo in dem Moment bei einem Thema einige Dinge für dich unklar sind. ;)

Gruß niesel
 

MQue

Top Contributor
Ich würde Eclipse verwenden, Eclipse lässt fast keinen wunsch offen, aber auch Netbeans ist in der Datenbank- anbindung ziemlich stark.
 

Snaiper

Mitglied
@niesel: Genau da liegt das Problem... egal was ich reinsetz er bemängelt ja schon von anfang an und zugegeben soviel ahnung hab ich da jetzt noch nicht xD

@MQue: Ich versuch mich mal an Eclipse zu gewöhnen... aber ganz langsam :D
 
H

Herr K.

Gast
nieselfriem hat gesagt.:
Vielleicht sollte du mal ein paar Zeilen Code posten, was du schon gemacht hast

Ich habe zwar das Vorgehen zum Verbindungsaufbau mal gelesen, aber funktionieren tut da garnichts :noe:

Also Deiner Aussage nach hast Du schon mal was gelesen (genau genommen auch gemacht, denn es funktioniert ja nichts ;-)). Was also hast Du gelesen, was davon probiert und was hat nicht funktioniert (das möchte nieselfriem wissen und das macht Sinn, denn sonst kann Dir keiner weiter helfen).

Zur eigentlichen Frage, Du kannst auch in einem Text-Editor eine Datenbankanbindung für Java schreiben. Das ist weniger komfortabel aber es ist dem Javacompiler völlig egal ob der Code aus dem Internet kopiert, im Texteditor geschrieben oder per Codevervollständigung/Templates erzeugt wurde.
Ich kenne die BlueJ IDE jetzt nicht, da Du aber damit Java Anwendungen entwickeln kannst, kannst Du sicher Klassen erzeugen, Methoden einfügen und den Methoden auch mit Logik füllen? Neben einem Datenbanksystem brauchst Du nicht mehr um eine Datenbank anzubinden.
 

Snaiper

Mitglied
Also über die Basics bin ich schon hinaus (hoff ich doch mal o_O )

Wird jetzt zwar weng schwer weil ich die Klasse zur Datenbankanbindung schonwieder gelöscht habe weil wie schon gesagt nichts funktionierte, aber ich versuche mal zu reproduzieren:

1.Import des SQL-Packages
2.Laden des MySQL-Connectors
3.Aufbau der Verbindung
4.Ausführen der SQL-Anweisungen
5.Verbindung trennen

1.
Java:
import java.sql.*; ?
2.
Java:
Connection conn = null;
Statement stmt; 
ResultSet result;

try{
Class.forName("Treiber im Jar, aber was genau?");
}
catch (Exception e){
System.out.println("Treiber konnte nicht gefunden werden"+e); 
}
3.
Java:
try{
    conn = DriverManager.getConnection("jdbc:mysql://"+DBHostname+"/"+DBName, DBUserID, DBPasswort); 
    }
    catch (Exception e){
    System.out.println("Fehler"+e); 
    }
5. Die Abfrage muss ich noch büffeln

6.
Java:
if(conn != null){
try{
conn.close(); 
}
catch (Exception e){
System.out.println("Fehler"+e); 
}
}
else{
System.out.println("Bereits geschlossen");
}

Das ist jetzt mehr oder weniger aus ein paar "Projekten" zamgeschnibbelt bzw. improvisiert. Wo ich jetzt hänge: Einmal der Treiber (siehe 2.) und dann hab ich keine Ahnung wo man sone Datenbank findet. (Es soll eine öffentlich zugängliche, also eine im I-net sein) Das Problem: Ich höre größtenteils von irgendwelchen Programmen die man installieren soll auf seinem Computer um das lokal auszuführen aber von öffentl. zugängl. les ich nichts o_O

LG,
Snaiper
 

timbeau

Gesperrter Benutzer
Okay, du stehst wirklich sehr am Anfang. Warum willst du eine DB-Anwendung machen, von Datenbanken scheinst du noch nicht soviel zu wissen. Grundsätzlich solltest du eine Datenbank auf deinem Rechner installieren.

Ich kann dir zum Üben H2 als Datenbank & Hibernate als Zugriff darauf empfehlen.

H2 Database Engine

Chapter 1. Tutorial

Inklusive Tutorial und du musst lediglich H2 installieren und die JAR in eclipse importieren.
Zusätzlich kann ich für eclipse noch den SQL-Explorer empfehlen. Damit kannst du innerhalb von eclipse direkt auf deine Datenbank zugreifen.
 

Snaiper

Mitglied
wiegesagt, ein bedürfnis den horizont über die schulinformatik hinaus zu erweitern xD

Oke, ich werd mir das mal reinziehn, danke! Nur eine Frage vorab: Warum muss man dazu eine DB auf seinem Rechner installieren?

LG,
Snaiper
 

timbeau

Gesperrter Benutzer
Du fragst ja nachher bestimmte Tabellen ab, generierst welche etc. pp.

Auf einer öffentlichen kannst du dich niemals so frei bewegen soweit es eine öffentliche überhaupt gibt. Außerdem fällt erstmal der Verbindungsaufbau leichter.
 

timbeau

Gesperrter Benutzer
"Schnell" ist die Installation von H2 auf jeden Fall. Download ca 20sec, Installation < 1 Minute. Einrichtung von Hibernate und H2 in Eclipse vielleicht 1 Stunde mit lesen. Wir sehen uns in 61 Minuten ok? ;)
 

Snaiper

Mitglied
Haut leider nicht ganz hin :D
Ich werd mich denk ich morgen oder nächstes Wochenende drüber hermachen, da werd ich mich dann auch wieder melden ;D

LG,
Snaiper
 

scue

Mitglied
Hi,

ich nutz den thread mal, da es auch zu meinem thema passt. ich habe folgendes script aus dem web herausgesucht und die nutzerdaten angepasst.

Java:
package control;

import java.net.*;
import java.sql.*;

public class DatenbankAnbindung {

	/**
	 * @param args
	 * @throws SQLException 
	 * @throws ClassNotFoundException 
	 */
	public static void main(String[] args) throws SQLException, ClassNotFoundException {
		String dbHost= "localhost";
		String dbPort = "3306";
		String dbName = "test";
		String user = "root";
		String passwd ="";
		Connection conn = null;
		
		try 
		{ 
		    Class.forName("org.gjt.mm.mysql.Driver"); 
		} 
		catch(ClassNotFoundException cnfe) 
		{ 
		    System.out.println("Treiber kann nicht geladen werden: "+cnfe.getMessage()); 
		}
		try 
		{ 
		    conn = DriverManager.getConnection("jdbc:mysql://" + dbHost + ":" + dbPort + "/" + dbName, user, passwd); 
		} 
		catch(SQLException sqle) 
		{ 
		    System.out.println("Verbindung ist fehlgeschlagen: " + sqle.getMessage()); 
		}
		if (conn != null)
		{
		    try 
		    { 
		        conn.close(); 
		    }
		    catch(SQLException sqle) 
		    { 
		        System.out.print(sqle.getMessage()); 
		    }
		}
     } // ende: public static void main() 
	}

Ich bekomme aber in der Konsole folgendes:
Java:
Treiber kann nicht geladen werden: org.gjt.mm.mysql.Driver
Verbindung ist fehlgeschlagen: No suitable driver found for jdbc:mysql://localhost:3306/test

Anschließend hatte ich den mysql-connector-java-5.1.14.zip heruntergeladen und nach C:\Programme\Java\jre1.6.0_20\lib entpackt. Blieb aber alles ohne Wirkung. Woran liegt das?

Gruß
 

swp

Mitglied
Du musst die Zip entpacken, dort drin befindet sich eine jar-Datei. Die bindest du dann als Bibliothek in deinem Programm ein (so dass sie beim Ausführen deines Programms im Classpath liegt).
Dann musst du statt
Java:
Class.forName("org.gjt.mm.mysql.Driver");
schreiben:
Java:
Class.forName("com.mysql.jdbc.Driver");
 

Ähnliche Java Themen

Neue Themen


Oben