Guten Abend allerseits,
ich hoffe sehr, dass ich hier Hilfe finde, nachdem mich das Problem fast in den Wahnsinn getrieben hat.
Zum Problem:
Ich bin Leiter eines Vereins und möchte meine Mitglieder in einem Java-Tool verwalten. Ich habe abgesehen von der Klasse "GUI" und einigen "Tool-Klassen" die Klassen "Mitglieder" und "Aktionen" welche einen n zu m Beziehung haben.
Ich habe bereits der Boardsuche und Mr. Google meine Probleme anvertraut doch ich finde keine Lösung.
Zur Frage: Wie kann ich jedem Mitglied eine oder mehrere Aktionen zuweisen und diese dann sinnvoll abfragen.
Da ich das Programm darum bereits geschrieben habe und auf ~1800 Zeilen komme verzeiht mir, dass ich nur Code-Schnipsel poste:
Schnipsel aus "GUI.java":
[JAVA=52]private Mitglieder[] mitglied = new Mitglieder[30];
private Orte[] ortO = new Orte[10];
private Aktionen[] aktion = new Aktionen[100];
private DefaultComboBoxModel ort = new DefaultComboBoxModel();
private DefaultListModel mitgliederListe = new DefaultListModel();
private DefaultListModel aktionenListe = new DefaultListModel();[/code]
Die ganze "Aktionen.java":
Die ganze "Mitglieder.java":
ich hoffe sehr, dass ich hier Hilfe finde, nachdem mich das Problem fast in den Wahnsinn getrieben hat.
Zum Problem:
Ich bin Leiter eines Vereins und möchte meine Mitglieder in einem Java-Tool verwalten. Ich habe abgesehen von der Klasse "GUI" und einigen "Tool-Klassen" die Klassen "Mitglieder" und "Aktionen" welche einen n zu m Beziehung haben.
Ich habe bereits der Boardsuche und Mr. Google meine Probleme anvertraut doch ich finde keine Lösung.
Zur Frage: Wie kann ich jedem Mitglied eine oder mehrere Aktionen zuweisen und diese dann sinnvoll abfragen.
Da ich das Programm darum bereits geschrieben habe und auf ~1800 Zeilen komme verzeiht mir, dass ich nur Code-Schnipsel poste:
Schnipsel aus "GUI.java":
[JAVA=52]private Mitglieder[] mitglied = new Mitglieder[30];
private Orte[] ortO = new Orte[10];
private Aktionen[] aktion = new Aktionen[100];
private DefaultComboBoxModel ort = new DefaultComboBoxModel();
private DefaultListModel mitgliederListe = new DefaultListModel();
private DefaultListModel aktionenListe = new DefaultListModel();[/code]
Die ganze "Aktionen.java":
Java:
package emc.jrk.ctrl;
import java.util.Calendar;
import java.util.Date;
/**
*
* @author caraggim
* @version 1.0
*
*/
public class Aktionen
{
//Deklarieren der benötigten Variablen
private int id; //Einmalige ID einer Aktion
private int ortsID; //OrtsID aus 'emc.jrk.ctrl.Orte'
private String name; //Name einer Aktion
private String beschreibung; //Kurze Beschreibung einer Aktion
private Calendar startDatum; //Startdatum einer Aktion
private Calendar endDatum; //Enddatum einer Aktion
//Methoden
public boolean isVorbei()
{
boolean vorbei; //Ja-Nein ob Aktion bereits vorbei ist
Calendar heute = Calendar.getInstance();//Aktuelles Datum
if(endDatum.compareTo(heute) == -1){ //Wenn das Enddatum in der Vergangenheit liegt:
vorbei = true; //Aktion ist vorbei
}
else{ //Sonst:
vorbei = false; //Aktion ist noch nicht vorbei
}
return vorbei; //Zurückgeben der Variable
}
//Getters und Setters der Vaiablen
public int getId()
{
return id;
}
public void setId(int id)
{
this.id = id;
}
public int getOrtsID()
{
return ortsID;
}
public void setOrtsID(int ortsID)
{
this.ortsID = ortsID;
}
public String getName()
{
return name;
}
public void setName(String name)
{
this.name = name;
}
public String getBeschreibung()
{
return beschreibung;
}
public void setBeschreibung(String beschreibung)
{
this.beschreibung = beschreibung;
}
public Calendar getStartDatum()
{
return startDatum;
}
public void setStartDatum(int dd, int mm, int yyyy)
{
startDatum.set(yyyy, mm, dd);
}
public Calendar getEndDatum()
{
return endDatum;
}
public void setEndDatum(int dd, int mm, int yyyy)
{
endDatum.set(yyyy, mm, dd);
}
}
Java:
package emc.jrk.ctrl;
import java.util.Calendar;
import java.util.Date;
import java.util.GregorianCalendar;
/**
*
* @author caraggim
* @version 1.0
*
*/
public class Mitglieder
{
//Deklarieren der benötigten Variablen
private int id; //Eindeutige ID des Mitglieds
private int ortsID; //OrtsID aus 'emc.jrk.ctrl.Orte'
private String name; //Nachname
private String vorname; //Vorname und eventuell 2.Name
private String strasse; //Straße und Hausnummer
private String telefonnummer; //Telefonnummer
private String emailadresse; //Emailadresse
private String bild; //Pfad zu Avatar-Bild
private Calendar geburtsDatum = new GregorianCalendar(0001, Calendar.JANUARY, 1); //Geburtsdatum
private Calendar eintrittDatum = new GregorianCalendar(0001, Calendar.JANUARY, 1); //Datum des Eintritts
private Calendar austrittDatum = new GregorianCalendar(9999, Calendar.JANUARY, 1); //Datum des Austritts
private boolean ausgetreten = false; //Ja-Nein ob das Mitglied ausgetreten ist
//Setter und Getter der Variablen
public int getId()
{
return id;
}
public void setId(int id)
{
this.id = id;
}
public int getOrtsID()
{
return ortsID;
}
public void setOrtsID(int ortsID)
{
this.ortsID = ortsID;
}
public String getName()
{
return name;
}
public void setName(String name)
{
this.name = name;
}
public String getVorname()
{
return vorname;
}
public void setVorname(String vorname)
{
this.vorname = vorname;
}
public String getStrasse()
{
return strasse;
}
public void setStrasse(String strasse)
{
this.strasse = strasse;
}
public String getTelefonnummer()
{
return telefonnummer;
}
public void setTelefonnummer(String telefonnummer)
{
this.telefonnummer = telefonnummer;
}
public String getEmailadresse()
{
return emailadresse;
}
public void setEmailadresse(String emailadresse)
{
this.emailadresse = emailadresse;
}
public String getBild()
{
return bild;
}
public void setBild(String bild)
{
this.bild = bild;
}
public Date getGeburtsDatum()
{
return geburtsDatum.getTime();
}
public void setGeburtsDatum(int year, int month, int date)
{
geburtsDatum.set(year, month-1, date);
}
public Date getEintrittDatum()
{
return eintrittDatum.getTime();
}
public void setEintrittDatum(int year, int month, int date)
{
eintrittDatum.set(year, month-1, date);
}
public Date getAustrittDatum()
{
return austrittDatum.getTime();
}
public void setAustrittDatum(int year, int month, int date)
{
austrittDatum.set(year, month-1, date);
}
public boolean isAusgetreten()
{
return ausgetreten;
}
public void setAusgetreten(boolean ausgetreten)
{
this.ausgetreten = ausgetreten;
}
}