# Gui mit Datenbank



## Dewo (19. Mai 2010)

Hallo,
ich würde gerne von einer ganz normalen GUI die Eingaben in eine Datenbank über mySQL speichern.
Könnten Sie mir bitte dabei behilflich sein oder gibt es da eventuell ein Grundgerüst über den Aufbau der mySQL Seite?

Danke im voraus

LG 


Devran


----------



## zerix (19. Mai 2010)

Hallo,

du kommst nicht mit sehr vielen Informationen rüber. 

Schau dir mal JDBC und JPA an. 
Mit JDBC kannst du direkt mit SQL-Statements auf Datenbanken zugreifen.
JPA ist eine Schicht auf SQL die hilft Objecte in einer Datenbank zu speichern.

Gruß

Sascha


----------



## Dewo (20. Mai 2010)

@ Sasche
genauere Informationen wären,
ich habe bei Eclipse eine GUI erstellt, darin sich bestimme Textfelder und auch Buttons befinden.
Und die Eingaben, die in dieTextfelder geschrieben worden sind, möchte ich in eine Datenbank, dich ich 
online erstellt habe (bei XAMPP, bzw unter myAdmin das über die localhost läuft), eintragen. Jetzt weiß ich
nur nicht, wie ich das in Eclipse verbinden könnte. Ich weiß nur dass ich komplett neue Klasse brauche, die 
nach dem Klicken des Buttons "Abschicken" brauche, wie diese auszusehen hat, weiß ich leider nicht.

Hoffe diese Informationen genügen, wenn noch etwas unklar ist bitte fragen.

Danke nochmal...

Lg Devran


----------



## Akeshihiro (20. Mai 2010)

Vielleicht hilft dir das ein Wenig weiter: http://www.tutorials.de/forum/java-tutorials/153901-ood-java-interfaces-plugin-programmierung.html

Aber wie Sascha schon sagte, es gibt verschiedene Möglichkeiten. Die einfachste ist wohl JDBC, da man da nicht viel Konfigurationsarbeit machen muss, aber da gäbe es noch ORMs, z.B. JPA oder Hibernate, die dann mit Objekten arbeiten, man muss also nicht mehr selber Anfragen an den Server schicken. Das Arbeiten wird also sehr viel Einfacher, wenn man größere Projekte hat.

Einfach mal googlen, Goole spuckt da richtig viel aus. Also such mal nach JDBC, JPA und Hibernate.


----------



## youza (20. Mai 2010)

Hier brauchst du einen Connector ich verwende den MySQL-connector-java-5.1.5-bin.jar:
http://code.google.com/p/stavkovaka...e=mysql-connector-java-5.1.5-bin.jar&can=2&q=

und so in der Art kannst du die dann verwenden:

```
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;


public class MySQL_Anbindung{

	//Dieses Unterprogramm wird für Update und Insert Befehle verwendet
	public void Datenbank_Insert_Update_Zugriff(String sql){
		try {
			//es wird einen Verbindungsbrücke geschaffen damit das Programm mit der Datenbank Komunizieren kann	
			Class.forName( "com.mysql.jdbc.Driver" );	
			//Hier wird die Verbindung festgelegt
			Connection con = DriverManager.getConnection( "jdbc:mysql://127.0.0.1:3306/Datenbankname", "Benutzer", "Passwort" );
			Statement stmt = con.createStatement();
	
			stmt.executeUpdate(sql);
			stmt.close();
			con.close();
		} catch (ClassNotFoundException e) {
			e.printStackTrace();
		} catch (SQLException e) {
			e.printStackTrace();
		}	
		
	}
	//Dieses Unterprogramm wird für Select zugriffe verwendet
	public ResultSet Datenbank_Select_Zugriff(String sql)
	{
		try {
			//es wird einen Verbindungsbrücke geschaffen damit das Programm mit der Datenbank Komunizieren kann			
			Class.forName( "com.mysql.jdbc.Driver" );
					
			//Hier wird die Verbindung festgelegt
			Connection con = DriverManager.getConnection( "jdbc:mysql://127.0.0.1:3306/Datenbankname", "Benutzer", "Passwort"  );
			Statement stmt = con.createStatement();
			ResultSet rs1;
			rs1 = stmt.executeQuery(sql);			
			return rs1;
		} catch (ClassNotFoundException e) {
			e.printStackTrace();
		} catch (SQLException e) {
			e.printStackTrace();
		}
		return null;	
	}
}
```

Grüße
Anton


----------



## Dewo (20. Mai 2010)

danke für die hilfe
jetzt möchte ich nur noch wissen, wie ich das button "abschicken" definieren müsste,
um den Connector in einsatz zu bringen... so sieht es bis jetzt bei mir aus...

abschicken.addActionListener(new ActionListener() {

			public void actionPerformed(ActionEvent e) {
				MYSQLConnect mysql;
				mysql.Datenbank_Select_Zugriff();

			}
		});
was muss in die klammer nach dem zugriff rein?

müsst ich die eingaben, die in der gui eingegeben worden sind, in der 
Connector-Klasse oder in der Hauptklasse speichern?
danke

lg 


devran


----------



## nochNichtVergeben (20. Mai 2010)

Jo, 

da fehlt dir jetzt die Logik, in der du die gemachten eingaben aus den eingabefelder klaubst und daraus ein valides sql statement baust.
JPA würde dir zumindest bei dem zweiten Teil helfen.

Gruss


----------

