 package paketWohnmobil;
 
 import java.sql.Connection;
 import java.sql.DriverManager;
 import java.sql.ResultSet;
 import java.sql.SQLException;
 import java.sql.Statement;
 
 import paketWohnmobil.Wohnmobil_FK;
 
 public class Wohnmobil_DAO
 {  // Attribute für den Verbindungsaufbau und den Datenbankzugriff

  // Anfang Attribute
   Connection dbverbindung =null;   //Objekt für den Verbindungsaufbau
   String dbtreiber;                //Variable für den Treiber und Pfad zur DB
   Statement ausfuehrungSQL=null;   //Objekt für die Ausführung von SQl-Anweisung
   String textSQL;                  //Variable zur Aufnahme von SQL-Anweisungen
  // Ende Attribute
  
  
  
  //Konstruktor
  public Wohnmobil_DAO()
  {
  }
  
  // Anfang Methoden
  
  //Methoden zum DBZugriff nicht öffentlich
  private void oeffneDB()
  {
    //Driver Manager
    try
    {
      Class.forName("com.mysql.jdbc.Driver");
    }
    catch(Exception e)
    {
      System.out.println("Driver:" + e.getMessage());
    }
    //Connection
    try
    {
      dbtreiber="jdbc:mysql://localhost/db_wohnmobil";
      dbverbindung=DriverManager.getConnection(dbtreiber,"root","");
      ausfuehrungSQL = dbverbindung.createStatement();
      System.out.println("Datenbankverbindung erstellt");
    }
    catch(SQLException err)
    {
      System.out.println("Driver: "+err.getMessage());
    }
  }
  
  private void schliessenDB()
  {
    try
    {
      ausfuehrungSQL.close();
      dbverbindung.close();
    }
    catch(SQLException err)
    {
      System.err.println(err);
    }
  }
  
  //eigene Methoden öffentlich
  public Wohnmobil_FK sucheDatensatz(String tname)
  {
    Wohnmobil_FK wmob = new Wohnmobil_FK();
    textSQL ="SELECT idwohnmobil, klasse, personennutzung, tagespreis, freikm, kmpreis, fahrzeuganzahl ";
    textSQL =textSQL + " FROM wohnmobil WHERE klasse ='"+tname+"';";
    System.out.println(textSQL);
    oeffneDB();
    System.out.println("Datenbank geoeffnet");
    try
    {
      ResultSet abfrageMenge = ausfuehrungSQL.executeQuery(textSQL);
      abfrageMenge.next();
      wmob.setIdWohnmobil(abfrageMenge.getInt(1));
      wmob.setKlasse(abfrageMenge.getString(2));
      wmob.setPersonennutzung(abfrageMenge.getInt(3));
      wmob.setTagespreis(abfrageMenge.getDouble(4));
      wmob.setFreikm(abfrageMenge.getInt(5));
      wmob.setKmpreis(abfrageMenge.getDouble(6));
      wmob.mehrenFahrzeuganzahl(abfrageMenge.getInt(7));
    }
    catch (Exception e)
    {
      System.out.println( "Wohnmobil Datensuche fehlgeschlagen");
      wmob= null;
    }
    schliessenDB();
    System.out.println("Datenbank geschlossen");
    return wmob;
  }
  
  
  // Ende Methoden
  
}