NetBeans Hilfe!!!

Hi, ich bräuchte unbedingt Hilfe. Bei einem Projekt, dass schon übermorgen fertig sein soll, komme ich leider nicht weiter. Es handelt sich hierbei um ein Hotelprogramm. Was ich gerade versuche zu machen, ist es eine "Filterfunktion" zu programmieren. Nachdem das Datum für die Zeitraum der Buchung eingetippt wurde, sollen nämlich alle Zimmer, die in diesem Zeitraum gebucht sind nicht mehr angezeigt werden.
Das Problem ist, dass ich und mein Partner (wir Arbeiten in 2er Gruppen) das Programm nicht ganz verstehen, da wir es schon halb fertig von unserem Professor bekommen haben und sein Programm nicht sehr übersichtlich ist.
Wir haben schon mit dem programmieren angefangen, jedoch werden bisher alle Zimmer angezeigt und nicht nur die freien. Codes sind als Anhänge dabei.
(bitte beachtet die Kommentare nicht, wir haben die meisten Codes von schon vorhandenen kopiert )
Oder (was vielleicht noch hilfreicher wäre) könntet ihr mir erklären, wie ich Schritt für Schritt vorgehen muss (mit Beispielcodes), damit diese "Filterfunktion" funktioniert?
Vielen, vielen Dank im voraus.
 

Anhänge

  • DbManager1.PNG
    DbManager1.PNG
    25,5 KB · Aufrufe: 35
  • DBManager2.PNG
    DBManager2.PNG
    35,3 KB · Aufrufe: 42

mihe7

Top Contributor
Was hältst Du davon, wenn Du Deinen Code per Copy und Paste hier rein kopierst und in CODE-Tags einschließt? Auf den Bildern dürfte ein Teil der SQL-Abfrage fehlen. Außerdem hat wohl keiner Lust, von den Bildern den Text abzutippen.
 
Java:
// Das hier steht im DatenbankManager  (dataStore)

public ArrayList<Zimmer> getAllFreieZimmer() throws java.sql.SQLException {
        ArrayList<Zimmer> freieZimmer = new ArrayList<Zimmer>();
   
        Zimmer zimmer;
        int znr;
        String zbez;
        double kosten_pro_nacht;
        boolean dusche, balkon, tier, tv, raucherzimmer;

        String anJahr, anMonat, anTag, abJahr, abMonat, abTag;

        if (BuchungsManager.getTheBuchungsManager().getAnreiseJahr() == null) {
            anJahr = "2016";
        } else {
            anJahr = BuchungsManager.getTheBuchungsManager().getAnreiseJahr();
        }

        if (BuchungsManager.getTheBuchungsManager().getAnreiseMonat() == null) {
            anMonat = "01";
        } else {
            anMonat = BuchungsManager.getTheBuchungsManager().getAnreiseMonat();
        }

        if (BuchungsManager.getTheBuchungsManager().getAnreiseTag() == null) {
            anTag = "01";
        } else {
            anTag = BuchungsManager.getTheBuchungsManager().getAnreiseTag();
        }

        if (BuchungsManager.getTheBuchungsManager().getAbreiseJahr() == null) {
            abJahr = "2016";
        } else {
            abJahr = BuchungsManager.getTheBuchungsManager().getAbreiseJahr();
        }

        if (BuchungsManager.getTheBuchungsManager().getAbreiseMonat() == null) {
            abMonat = "01";
        } else {
            abMonat = BuchungsManager.getTheBuchungsManager().getAbreiseMonat();
        }

        if (BuchungsManager.getTheBuchungsManager().getAbreiseTag() == null) {
            abTag = "01";
        } else {
            abTag = BuchungsManager.getTheBuchungsManager().getAbreiseTag();
        }

        if (theSetup.isDBactive()) {  // wenn mit DB gearbeitet wird, dann
            if (conn == null) { //keine Datenbabk verfügbar!
                return freieZimmer; // Leere Gästeliste melden
            }

 
            ResultSet rs = reader.query("SELECT Zimmer.Zimmernr, Zimmer.Zimmerbezeichnung, Zimmer.KostenproNacht, zimmer.dusche, zimmer.balkon, zimmer.tier, zimmer.tv, zimmer.raucherzimmer FROM Zimmer WHERE Zimmernr NOT IN"
                    + "(SELECT Zimmer.Zimmernr FROM Buchung, Zimmer "
                    + "WHERE (Anreisedatum BETWEEN '" + anJahr + "-" + anMonat + "-" + anTag + "' "
                    + "AND '" + abJahr + "-" + abMonat + "-" + abTag + "' "
                    + "OR Anreisedatum <= '" + anJahr + "-" + anMonat + "-" + anTag + "')"
                    + "AND (Abreisedatum BETWEEN '" + anJahr + "-" + anMonat + "-" + anTag + "' "
                    + "AND '" + abJahr + "-" + abMonat + "-" + abTag + "' "
                    + "OR Abreisedatum >= '" + abJahr + "-" + abMonat + "-" + abTag + "') "
                    + "AND (Buchung.Zimmernummmer = Zimmer.Zimmernr))"
                    + "ORDER BY Zimmernr");
            // jetzt alle Gäste anlegen und der Liste hinzufügen
            while (rs.next() == true) { // solange ein Datensatz da ist:
                znr = rs.getInt("ZimmerNR");
                zbez = rs.getString("Zimmerbezeichnung");
                kosten_pro_nacht = rs.getDouble("KostenproNacht");
                dusche = rs.getBoolean("Dusche");
                balkon = rs.getBoolean("Balkon");
                tier = rs.getBoolean("Tier");
                tv = rs.getBoolean("TV");
                raucherzimmer = rs.getBoolean("Raucherzimmer");

                // Jetzt wird der Gast erschaffen...
                zimmer = new Zimmer(znr, zbez, kosten_pro_nacht, dusche, balkon, tier, tv, raucherzimmer);
                // Und jetzt in unsere Gästeliste eingefügt
                freieZimmer.add(zimmer);
            }
            reader.closeResult(rs); // Arbeit getan, Reader kann rs schließen
        }
        return freieZimmer;
    }

    // Einen neuen Gast in die Datenbank einfügen
    public void addZimmer(Zimmer einZimmer) {
        if (theSetup.isDBactive()) {  // wenn mit DB gearbeitet wird, dann
            if (conn == null) { // gar keine Datenbank verfügbar, daher...
                return;         // ... gibt es nichts zu tun!
            }
            String sql = "INSERT INTO ZIMMER ";
            sql += "(ZIMMERNR, KATEGORIEBEZEICHNUNG, ZIMMERBEZEICHNUNG, KOSTENPRONACHT, ANZAHLBETTEN, DUSCHE, BALKON, TIER, TV, RAUCHERZIMMER) ";
            sql += "VALUES (?,?,?,?,?,?,?,?,?,?)";

            try {
                PreparedStatement pstmt = mrDB.createPreparedStatement(sql);
                pstmt.setInt(1, einZimmer.getZimmerNr());
                pstmt.setString(2, einZimmer.getKategorieBezeichnung());
                pstmt.setString(3, einZimmer.getZimmerBezeichnung());
                pstmt.setDouble(4, einZimmer.getKosten_pro_nacht());
                pstmt.setInt(5, einZimmer.getAnzahlBetten());
                pstmt.setBoolean(6, einZimmer.isDusche());
                pstmt.setBoolean(7, einZimmer.isBalkon());
                pstmt.setBoolean(8, einZimmer.isTier());
                pstmt.setBoolean(9, einZimmer.isTv());
                pstmt.setBoolean(10, einZimmer.isRaucherzimmer());
                pstmt.executeUpdate();
                pstmt.close();
            } catch (SQLException e) {
                System.out.println("DB-Fehler beim Einfügen Zimmer: " + einZimmer);
                System.out.println(e.getMessage());
                System.exit(0);
            }
        }
        if (theSetup.isDebugModus()) {
            System.out.println("DB-Manager: neues Zimmer eingefügt: " + einZimmer);
        }
   
    }



//Das hier ist der FreieZimmerManager

package appcenter;

import dataStore.DbManager;
import java.sql.SQLException;
import java.util.ArrayList;

public class FreieZimmerManager {

    // der DB-Manager
    private final DbManager mrDB;
    // der Puffer in dem alle Gastobjekte liegen werden
    private ArrayList<Zimmer> freieZimmerListe;
    // wo wir in der Gästeliste gerade sind
    private int pZimmerPosition = 0;

 
 
    // Es folgt der ALLEINIGE Manager, der sich um alle Daten kümmert
    // er darf KEINEN Kollegen haben, daher ist auch er ein 'Singleton'
    // Wir merken uns den Manager hier in der Klasse, daher static
    private static FreieZimmerManager derFreieZimmerManager;

    // getTheGastManager() liefert dem Aufrufer das Objekt derGastManager.
    // Wenn derGastManager noch nicht da ist, wird er geschaffen
    public static FreieZimmerManager getTheFreieZimmerManager() {
        if (derFreieZimmerManager == null) {
            // noch kein Manager existent, daher erst mal einen machen:
            derFreieZimmerManager = new FreieZimmerManager();
        }
        return derFreieZimmerManager;
    }

    // hier nun der Konstruktor der Klasse GastManager:
    // durch 'private' verhindern wir, dass irgendwer weitere Manager macht
    private FreieZimmerManager() {
        // Zuerst holen wir den den für die Datenhaltung zuständigen DB-Manager.
        // Dieser kümmerst sich um die ganzen Datenspeicherungen auf Platte...
        mrDB = DbManager.getTheDBManager();
        // Nun die Gäste vorbereiten, indem wir alle Gäste aus der DB holen
        try {
            freieZimmerListe = mrDB.getAllFreieZimmer();
        } catch (java.sql.SQLException e) {
            System.out.println("Fehler beim Laden der Zimmer!");
            e.printStackTrace();
            System.exit(0); // Programm abbrechen!!
        }
    } // Ende des Konstruktors

    public int getAnzahlZimmer() {
        return freieZimmerListe.size();
    }

    public ArrayList<Zimmer> getAlleZimmer() {
        return freieZimmerListe;
    }

    public Zimmer getZimmer(int pos) {
        //Holt den Gast aus der Liste, der auf Listenplatz pos liegt
        //Falls das nicht möglich ist, wird null geliefert
        if (freieZimmerListe.isEmpty()) { // NUll liefern, wenn gar keine Gäste da sind
            return null;  // Puffer leer
        }
        // Auch null liefern, wenn pos ausserhalb des Puffers liegt
        if (pos < 0 || pos >= freieZimmerListe.size()) {
            return null;
        }
        pZimmerPosition = pos; // An diese Listenposition gehen und...
        return freieZimmerListe.get(pZimmerPosition);  // dortigen Gast liefern
    }

    public Zimmer getZimmer() {
        //holt den Gast, der an der AKTUELLEN Pufferposition gespeichert ist
        return getZimmer(pZimmerPosition);
    }

    public Zimmer getFirstZimmer() {
        //holt den ersten Gast am Beginn der Gästeliste
        pZimmerPosition = 0;  // An den Anfang der Gästeliste gehen
        return getZimmer(pZimmerPosition);  // dortigen Gast liefern
    }

    public Zimmer getLastZimmer() {
        //holt den Gast am Listenende
        pZimmerPosition = freieZimmerListe.size() - 1;  // ans Ende der Liste gehen
        return getZimmer(pZimmerPosition);  // dortigen Gast liefern
    }

    public Zimmer getNextZimmer() {
        //holt den Gast an der nächsten Listenposition
        pZimmerPosition++; // Position um eine Stelle weiter schalten
        return getZimmer(pZimmerPosition);  // dortigen Gast liefern
    }

    public Zimmer getPrevZimmer() {
        //holt den Gast an der vorherigen Pufferposition
        pZimmerPosition--; // Position um eine Stelle nach vorne schalten
        return getZimmer(pZimmerPosition);  // dortigen Gast liefern
    }

    public int findeZimmerPosition(int znr) {
        // Sucht in der Gästeliste den Gast mit Nr gnr
        // und liefert dann die Position in der Liste, wenn er gefunden wurde.
        // Wenn er nicht gefunden wurde (also nicht drin ist), wird -1 geliefert!
        if (freieZimmerListe.isEmpty()) {
            return -1;  // Liste ist leer: sicher keiner drin!
        }

        int pos = 0; // die Position in der Liste
        Zimmer einZimmer = getFirstZimmer();
        while (einZimmer != null) { //Solange einGast auf einen Gast zeigt, tue:
            if (einZimmer.getZimmerNr() == znr) // Hurra, wir haben ihn!
            {
                return pos; // daher: Suche beenden und Position melden
            }
            // Okay, der war es nicht! Weiter zum nächsten Gast gehen
            einZimmer = getNextZimmer();
            pos++;
        }
        // Jetzt sind wir durch die ganze Gästeliste komplett durchgegangen
        // und haben ihn nicht gefunden! Daher:
        return -1;
        // ANMERKUNG:
        // finde() ist eine sehr schlecht gemachte Methode, denn sie ist
        // bei großer Gastanzahl elend langsam (ineffizient)
        // man nennt das Vorgehen hier:   'sequentielles Suchen'
        // Wie könnte man viel besser werden? Wer hat eine Idee?
    }

    public int findeZimmerPosition(Zimmer z) {
        // Sucht den Gast in der Gästeliste mit der gleichen GNr wie einGast
        // und liefert dann die Position in der Liste, wenn er gefunden wurde.
        // Wenn er nicht gefunden wurde (also nicht drin ist), wird -1 geliefert!
        return findeZimmerPosition(z.getZimmerNr());
    }

    public void neuesZimmer(Zimmer einZimmer) throws Exception {
        // fügt einGast in Gästeliste (und eventuell Datenbank) ein
        int pos = findeZimmerPosition(einZimmer);
        if (pos >= 0) {
            //Ein solcher Gast ist ja schon da, den gibt es also schon!
            throw new Exception("Doppeltes Zimmer!");
        }
        freieZimmerListe.add(einZimmer);  // einGast in Gästeliste einfügen
        // er wurde am Ende angefügt, daher Listenposition anpassen
        pZimmerPosition = freieZimmerListe.size() - 1;

        // Jetzt muss der Gast (eventuell) noch in die DB kommen
        mrDB.addZimmer(einZimmer);
    }

    public void aktualisiereZimmer(Zimmer einZimmer) throws Exception {
        // aktualisiert die Eigenschaften des Gasts in der Gästeliste und DB
        int pos = findeZimmerPosition(einZimmer);
        if (pos < 0) {
            //er ist ja noch gar nicht in der Liste!
            throw new Exception("Zimmer fehlt: " + einZimmer);
        }
        // Liste an der gefundenen Position aktualisieren,
        // d.h. Gast wird dort in den Puffer eingetragen
        pZimmerPosition = pos;
        freieZimmerListe.set(pZimmerPosition, einZimmer);

        // Jetzt muss der Gast (eventuell) noch in der DB aktualisiert werden
        mrDB.updateZimmer(einZimmer);
    }

    public void entferneZimmer(Zimmer zimmer) {
        // lösche den Gast gast aus Puffer und Datenbank
        int pos = freieZimmerListe.indexOf(zimmer);
        if (pos < 0) {
            //er ist gar nicht im Puffer,also nichts weiter tun
            return;
        }
        // Die Methode deletedGastt ist überladen: es gibt sie 2x aber in
        // unterschiedlicher Ausprägung: mal übergibt man einen Gast,
        // (das ist die Methode hier
        // und bei der anderen Methode übergibt man die Pufferposition.
        // Da wir nun wissen, wo der Gast im Puffer ist, kann den
        // Rest der Arbeit doch gleich unsere "Schwester-Methode" erledigen:
        deleteZimmer(pos);
    }

    public void deleteZimmer(int pos) {
        // lösche den Gast, der an Position pos ist, aus dem Puffer
        // Nur wenn pos OK ist, wird gearbeitet:
        if (pos < 0 || pos >= freieZimmerListe.size()) {
            return; // dann nix tun
        }
        Zimmer einZimmer = getZimmer(pos);
        freieZimmerListe.remove(pos);  // aus dem Puffer entfernen

        // gegebenenfalls Pufferposition anpassen, falls Puffer leer wurde, oder
        // wir den hintersten Gast löschten und nun zuweit hinten stehen
        if (freieZimmerListe.isEmpty()) {
            pZimmerPosition = 0;
        } else // falls Pufferposition zu weit hinten:
        if (pZimmerPosition >= freieZimmerListe.size()) {
            pZimmerPosition = freieZimmerListe.size() - 1;
        }

        // Jetzt muss der Gast eventuell noch aus der DB verschwinden:
        mrDB.deleteZimmer(einZimmer);
    }

    public int checkeZNR(String text) {
        // Ist Text eine gültige Gastnummer?
        // im Fehlerfall -1 liefern, sonst den ermittelten Wert
        int znr;
        try {
            znr = Integer.parseInt(text);
        } catch (NumberFormatException e) {
            return -1;
        }
        // es ist zumindest mal ein Integer, aber weiter:
        if (znr < 0) {
            return -1;
        }
        // es ist alles OK
        return znr;
    }

    public double checkeKostenProNacht(String text) {
        // Ist Text ein gültiger Umsatz (>=0) ?
        // im Fehlerfall -1 liefern, sonst den ermittelten Wert
        double kpn;
        try {
            kpn = Double.parseDouble(text);
        } catch (NumberFormatException e) {
            return -1;
        }
        // es ist zumindest mal ein Integer, aber weiter:
        if (kpn < 0) {
            return -1;
        }
        // es ist alles OK
        return kpn;
    }

    public int checkeANZAHLBETTEN(String text) {
        int ab;
        try {
            ab = Integer.parseInt(text);
        } catch (NumberFormatException e) {
            return -1;
        }

        if (ab < 0) {
            return -1;
        }
        return ab;
    }

    public Zimmer getZimmerAnzahlBetten(int anzahl) {
        //Holt den Gast aus der Liste, der auf Listenplatz pos liegt
        //Falls das nicht möglich ist, wird null geliefert
        if (freieZimmerListe.isEmpty()) { // NUll liefern, wenn gar keine Gäste da sind
            return null;  // Puffer leer
        }
        // Auch null liefern, wenn pos ausserhalb des Puffers liegt
        if (anzahl < 0 || anzahl > 6) {
            return null;
        }
        pZimmerPosition = anzahl; // An diese Listenposition gehen und...
        return freieZimmerListe.get(pZimmerPosition);  // dortigen Gast liefern
    }

}



// Das hier steht in DlgBuchung  (gui)

    private void jButtonFilternActionPerformed(java.awt.event.ActionEvent evt) {                                           
        BuchungsManager.getTheBuchungsManager().setAnreiseTag(jTextFieldAnreiseTag.getText());
        BuchungsManager.getTheBuchungsManager().setAnreiseMonat(jTextFieldAnreiseMonat.getText());
        BuchungsManager.getTheBuchungsManager().setAnreiseJahr(jTextFieldAnreiseJahr.getText());
        BuchungsManager.getTheBuchungsManager().setAbreiseTag(jTextFieldAbreiseTag.getText());
        BuchungsManager.getTheBuchungsManager().setAbreiseMonat(jTextFieldAbreiseMonat.getText());
        BuchungsManager.getTheBuchungsManager().setAbreiseJahr(jTextFieldAbreiseJahr.getText());


    }
 
Zuletzt bearbeitet:
X

Xyz1

Gast
Die sowol Bilder wie auch Text sind ja id reinste Zumutung!
Pack alles in Java Code Tags. Schnell! ;)
 
Danke für den Tipp :)
Wie das Fenster aussehen soll, habe ich als Bild angehängt. Sobald man auf den Button "Daten filtern" klickt, sollen die Zimmer, die in dem davor oben eingetippten Zeitraum besetzt sind, aus der Tabelle verschwinden. Danach soll die Buchungsnummer selbst eingetippt werden und sobald man auf buchen klickt, sollen die Buchungs-, Zimmer- und Gastnummer, sowie Anreise- und Abreisedatum in der Buchungsdatenbank gespeichert werden.
Die Aufgabenstellung lautet: "Bringt das Programm zum laufen". Wir haben schon versucht es so einfach wie möglich zu machen.
Das Problem ist, dass wir nicht viel Ahnung von Netbeans haben, da wir uns mithilfe des Hotelprogramms eigentlich alles selber beibringen sollen.
Jedoch ist schon übermorgen der Tag, an dem wir das Programm präsentieren sollen und eine Note dafür bekommen.
Es wäre sehr hilfreich, wenn wir wissen würden, welche Codes usw. es gibt, um die freien Zimmer rausfiltern zu können.
 

Anhänge

  • Buchung Design.PNG
    Buchung Design.PNG
    22 KB · Aufrufe: 48

mihe7

Top Contributor
Eine äußerst ungewöhnliche Aufgabenstellung.
Ich find die gut - so richtig praxisorientiert: Es ist mir sch...egal was Ihr macht, Hauptsache der Mist läuft :)

@FH_Netbeans_Project

1. was ist reader? (OK, ich will es eigentlich gar nicht wissen)
2. normalerweise macht man die Abfrage mit einem PreparedStatement und setzt die Parameter entsprechend.
3. habt ihr den SELECT schon mal direkt laufen lassen? Kommt das richtige raus?
4. an der folgenden Stelle passen Kommentar und Code irgendwie nicht ganz zusammen:
Code:
        // Nun die Gäste vorbereiten, indem wir alle Gäste aus der DB holen
        try {
            freieZimmerListe = mrDB.getAllFreieZimmer();
        } catch (java.sql.SQLException e) {
            System.out.println("Fehler beim Laden der Zimmer!");
            e.printStackTrace();
            System.exit(0); // Programm abbrechen!!
        }
Das soll zunächst einmal reichen.
 

mihe7

Top Contributor
Noch ein Hinweis zur Abfrage: Schaut Euch mal genau die Zeiträume an, die Ihr hier abfragt. Das kann man vereinfachen.
 

MoxxiManagarm

Top Contributor
Java:
private void jButtonFilternActionPerformed(java.awt.event.ActionEvent evt) {                                         
        BuchungsManager.getTheBuchungsManager().setAnreiseTag(jTextFieldAnreiseTag.getText());
        BuchungsManager.getTheBuchungsManager().setAnreiseMonat(jTextFieldAnreiseMonat.getText());
        BuchungsManager.getTheBuchungsManager().setAnreiseJahr(jTextFieldAnreiseJahr.getText());
        BuchungsManager.getTheBuchungsManager().setAbreiseTag(jTextFieldAbreiseTag.getText());
        BuchungsManager.getTheBuchungsManager().setAbreiseMonat(jTextFieldAbreiseMonat.getText());
        BuchungsManager.getTheBuchungsManager().setAbreiseJahr(jTextFieldAbreiseJahr.getText());
    }

Mir fehlt die Stelle wo alle aktuellen Einträge entfernt und das Ergebnis der DB-Abfrage ergänzt wird. Streich die Gäste aus sämtlichen Kommentaren, es geht hier um Zimmer und Buchungen. Gäste sehe ich hier perse nirgends. Die Kommentare sind nur verwirrend und erschweren alles.
 

MoxxiManagarm

Top Contributor
Ich gebe mihe7 voll Recht. Ich hatte mal eine Anfrage, die nur aus einem Screenshot von einer chinesischen GUI Fehlermeldung auf einem Mobiltelefon bestand. Keine technischen Daten.

Dann finde mal den Fehler ;-)
 
X

Xyz1

Gast
Ja, im Kunden-Support gibt es immermal wieder die unmöglichsten Anfragen. :) Und den darfst du dann nichtmal einfach so abweisen, er möchte mit seinen Problemen ernstgenommen werden. Naja - wenigstens zahlen die Chinesen gut. :)
 
X

Xyz1

Gast
Nur, wenn man an Frotend, Backend, Datenbanken, DevOps sowie mobilen Applikationen zeitgleich arbeitet, hat man die Arschkarte.
 

MoxxiManagarm

Top Contributor
Ich meinte damit aber das Gegenteil von herabwürdigend ;-)
Eher multifunktionales Talent. Wenn du ja gesagt hättest, hätte ich zu dir aufgeschaut :p
 
Danke für eure Hilfe. Wir haben es jetzt geschafft, dass die Zimmer gefiltert werden. Wir haben aber noch weitere Probleme. Wir wollen nämlich die Anzahl der Übernachtungen zwischen Anreise- und Abreisedatum berechnen.
Wir haben Anreise- und Abreisedatum in Form von Java.util.date. Wie kann ich das berechnen?
Zudem haben wir ein Problem mit dem auswählen der gefilterten Zimmer. Wenn zum Beispiel das Zimmer 5 rausfällt, weil es zu der angegebenen Zeit besetzt ist, ist an der Stelle von Zimmer 5 logischerweise Zimmer 6.
Wenn wir jetzt aber auf Zimmer 6 klicken um es zu buchen, wird Zimmer 5 genommen, obwohl es ja eigentlich aus der Tabelle rausgenommen wurde.
Wieder einmal vielen Dank schonmal im voraus.
 

MoxxiManagarm

Top Contributor
Eigentlich liegt eine Vermutung ganz nahe - Sie nehmen den Index aus der Selektion. Dabei verwenden Sie den Index um das Zimmer aus dem Manager zu holen, wobei der Manager nicht mit dem Model der Liste synchron gehalten wird. Allerdings wäre dann schon nicht so toll, dass der ZimmerManager nicht das Model ist. Der ZimmerManager sollte das Model sein. Auf diese Weise würde man zu jeder Zeit die Korrektheit der Daten sicherstellen.

Vielleicht vergesst ihr auch einfach nur euren Index im ZimmerManager pZimmerPosition Wieso gibt es diesen Index überhaupt? Für mich wäre in den meisten Fällen der Index ein GUI-Element (Selektion in Liste) und würde für mich perse im Model nichts bedeuten.
 
Zuletzt bearbeitet:
Ähnliche Java Themen
  Titel Forum Antworten Datum
W Hilfe bei Methode Allgemeine Java-Themen 14
M Javascript Hilfe bei ToDoList? Allgemeine Java-Themen 1
A Java Programm erstellen hilfe Allgemeine Java-Themen 10
Momo16 Brauche Hilfe - Java Projekt kann nicht erstellt werden Allgemeine Java-Themen 12
T Hilfe bei negation von suchabfrage Allgemeine Java-Themen 2
Peterw73 Hilfe bei Java gesucht Allgemeine Java-Themen 3
N Hilfe bei RegEx benötigt Allgemeine Java-Themen 3
A Hilfe beim Verständnis Allgemeine Java-Themen 16
V Hilfe mit Java Code Allgemeine Java-Themen 4
T Hilfe bei Programm. IDE: Eclipse mit EV3-Plugin, lejos Allgemeine Java-Themen 8
alinakeineAhnungv Hilfe bei einem Straßenbahn-Projekt von mir Allgemeine Java-Themen 18
Aboya Kugel mit Hilfe von Dreiecken rekursiv zeichnen Allgemeine Java-Themen 2
K Anzeigemöglichkeit von Bildern in JavaFX mit Hilfe von MongoDB GridFS Allgemeine Java-Themen 0
A Preisberechnung, Hilfe Allgemeine Java-Themen 4
M Bräuchte Hilfe bei der Aufgabe Allgemeine Java-Themen 1
s_1895 Hilfe bei Java Tic Tac Toe Allgemeine Java-Themen 8
W Suche Ursache für NPE - woher kommt sie? (Hilfe beim Debugging) Allgemeine Java-Themen 19
J Hilfe, Jar Datei kann nicht ausgeführt werden Allgemeine Java-Themen 2
M Hilfe bei einer Java Programmieraufgabe! Ab morgen Montag um 08:00 Uhr Allgemeine Java-Themen 5
B Bei Email: FW / AW... - Hilfe bei String suche Allgemeine Java-Themen 21
U Erste Schritte Hilfe bei simplem Glücsspiel in Java Allgemeine Java-Themen 4
K OOP Suche Hilfe + Erklärung für eine Hausaufgabe Allgemeine Java-Themen 1
K Objektorientierung, hilfe Allgemeine Java-Themen 9
V Bilder bei bestimmten Zeiten wechseln, bitte um Hilfe Allgemeine Java-Themen 5
D Hilfe bei Informatik Hausaufgaben Allgemeine Java-Themen 30
RalleYTN Brauche Hilfe beim Run-Length-Decoding Allgemeine Java-Themen 9
S Hilfe bei dem Auslesen einer YAML Datei Allgemeine Java-Themen 8
H Schiffe versenken JButton Schiffe mit GUI verbinden Hilfe! Allgemeine Java-Themen 2
M Bitte Hilfe mit REGEX (Negieren) Allgemeine Java-Themen 4
E HILFE !! Exception in thread "main" java.lang.NoClassDefFoundError: org/apache/commons/io/FileUtils Allgemeine Java-Themen 4
S GetMethode erstellen mit Hilfe von Parametern Allgemeine Java-Themen 9
J Java "Bank Programm" Brauche eure Hilfe Allgemeine Java-Themen 3
B Hilfe bei Übungsblätter Allgemeine Java-Themen 9
O Erste Schritte Benzinverbrauch Code Hilfe Allgemeine Java-Themen 3
C Hilfe Bei Vegas Slide Allgemeine Java-Themen 0
B Hilfe!! spiel um Funktion des Selektierens erweitern (mit ASCII-Tabelle) Allgemeine Java-Themen 3
Ice4P4rty Hilfe Bei Promillerechner Allgemeine Java-Themen 9
C Atfx mit Hilfe von OpenAtfx auslesen Allgemeine Java-Themen 1
perlenfischer1984 Hilfe bei Design (Pattern) Allgemeine Java-Themen 5
G Hilfe bei Projektarbeit Allgemeine Java-Themen 5
GenerationLost Input/Output Custom Serialization - hilfe bei Realisierung Allgemeine Java-Themen 8
J Hilfe!!! Ausbildung Allgemeine Java-Themen 14
H Hilfe bei Erstellung eines Hilfe Fenster bei Tastendruck (F1 bei Win98) Allgemeine Java-Themen 5
B Swing Hilfe bei Abfrage von Benutzernamen und Passwort Allgemeine Java-Themen 2
T Hilfe bei Code Allgemeine Java-Themen 3
U Swing Hilfe beim Quellcode für ein Codierungs-/Decodierungsprogramm Allgemeine Java-Themen 9
S Hilfe bei Gui Allgemeine Java-Themen 3
O Best Practice Hilfe bei Algorithmus gesucht Allgemeine Java-Themen 10
GRAZZ0R Hilfe zum Spiel Mensch ärger dich nicht Allgemeine Java-Themen 1
C Hilfe bei den Ausgaben Allgemeine Java-Themen 4
K Hilfe bei GUI für Pizza-Service Allgemeine Java-Themen 11
J Hilfe bei Datumsberechnung aus Textfeld Allgemeine Java-Themen 10
I Bitte Drngend hilfe Allgemeine Java-Themen 2
C Hilfe bei NoClassDefFoundError Allgemeine Java-Themen 14
C Hilfe bei einer Fehler meldung Allgemeine Java-Themen 3
I Methoden Schnelle Hilfe benötigt - Kleines Video/Slideshow aus mehreren Bildern erstellen Allgemeine Java-Themen 3
C Hilfe bei einer Point Ausgabe Allgemeine Java-Themen 7
S Probleme mit meinem MacBook Pro DRINGEND HILFE erbeten! Allgemeine Java-Themen 17
N Erste Schritte [HILFE] effizienter,leistungsfähigermbackground Pixelbot Allgemeine Java-Themen 5
A Hilfe gesucht Allgemeine Java-Themen 44
X ArrayList will nicht so wie ich will. Hilfe Allgemeine Java-Themen 8
C Hilfe bei einer Fehlermeldung Allgemeine Java-Themen 5
C Hilfe bei MalformedURLException Allgemeine Java-Themen 7
D Baum zeichnen hilfe Allgemeine Java-Themen 4
M Hilfe bei parseInt Allgemeine Java-Themen 4
F Compiler-Fehler Hilfe bei Startup error Allgemeine Java-Themen 3
D Mit Hilfe von Java aus Excel-Sheet Zellen in neues Excel Dokument kopieren Allgemeine Java-Themen 3
F Socket NullPointerException Bitte um hilfe! Allgemeine Java-Themen 12
M Input/Output Java + OCR ? Erfahrungen und bitte um Hilfe Allgemeine Java-Themen 12
M Brauche Hilfe bei Quellcodeverständnis Allgemeine Java-Themen 4
B Zahlen ausgeben hilfe! Allgemeine Java-Themen 8
S Java USB dringend Hilfe! Allgemeine Java-Themen 6
X Hilfe bei Programm Allgemeine Java-Themen 5
zer0zer0 Best Practice apache common cli - optionen für hilfe ausblenden Allgemeine Java-Themen 5
F Bitte um Hilfe! Allgemeine Java-Themen 5
S Hilfe bei geeignetem Pattern (Decorierer) Allgemeine Java-Themen 2
D Brauche Hilfe bei Rechnung (Exponentiation) Allgemeine Java-Themen 12
F Brauche Hilfe bei Java Allgemeine Java-Themen 6
S Hilfe bei simplem Programm Allgemeine Java-Themen 3
J Ein blutiger Anfänger braucht Hilfe Allgemeine Java-Themen 7
B Hilfe bei JUnit Test Allgemeine Java-Themen 1
A ALTER TABLE mit Hilfe von RegEx zerlegen, splitten Allgemeine Java-Themen 5
B Dringend Hilfe gesucht für Struktogramm Allgemeine Java-Themen 11
C Brauche Hilfe mit Modulo Strategie Allgemeine Java-Themen 2
S Brauche Hilfe: Prüfungsaufgabe Java Allgemeine Java-Themen 8
J Probleme bei kompilieren ... Bitte um Hilfe Allgemeine Java-Themen 2
G java.exe in System 32. Hilfe!!! Allgemeine Java-Themen 8
M google plus java api - Anfänger sucht Hilfe Allgemeine Java-Themen 7
M Hilfe mit JOptionPane Allgemeine Java-Themen 2
I Hilfe: Klasse Vieleck Allgemeine Java-Themen 5
I javax.sound.sampled.* - Hilfe zu den Controls Allgemeine Java-Themen 8
C Hilfe bei Adressbuch-Programmierung, wie am Besten mit JList implementieren Allgemeine Java-Themen 2
S Hilfe bei der Cosinusapproximation Allgemeine Java-Themen 10
K Arraylist Hilfe Allgemeine Java-Themen 13
K Hilfe Felder Allgemeine Java-Themen 7
T Hilfe im Lizenz-Dschungel Allgemeine Java-Themen 11
S brauche Hilfe für ssh connection in java Allgemeine Java-Themen 6
W sql Query abspeichern selber variabele hilfe...? Allgemeine Java-Themen 16
N Hilfe bei Projekt Allgemeine Java-Themen 5
Jats Hilfe bei Bank mit mehreren Klassen Allgemeine Java-Themen 11

Ähnliche Java Themen

Neue Themen


Oben