Hallo Zusammen!
Ich habe folgendes Problem:
ich möchte mehrere Objekte serialisieren und in einer Datei speichern, um sie später wieder auslesen zu können.
Jedes Objekt hat als Attribut eine eindeutige ID, anhand welcher ich später wieder auf die einzelnen Objekte zugreifen möchte.
Standardmäßig geht das folgendermaßen:
Das Problem ist folgendes: jeder Aufruf der Methode "studentAnlegen() überschreibt das zuletzt geschriebene Objekt in der Datei.
Wie kann ich es erreichen, dass alle Objekte persistent werden und über das Attribut "matrikelnummer" wieder aufgerufen werden können?
Danke für die Hilfe!
Ich habe folgendes Problem:
ich möchte mehrere Objekte serialisieren und in einer Datei speichern, um sie später wieder auslesen zu können.
Jedes Objekt hat als Attribut eine eindeutige ID, anhand welcher ich später wieder auf die einzelnen Objekte zugreifen möchte.
Standardmäßig geht das folgendermaßen:
Code:
package se;
import se.Student;
import java.io.*;
import java.util.Date;
public class StudentenVerwaltung{
private static Student student = new Student();
public static void studentAnlegen(int matNr, String vor, String nach){
student.setMatrikelnummer(matNr);
student.setVorname(vor);
student.setNachname(nach);
}
public static void main(String args[]) throws IOException, ClassNotFoundException{
studentAnlegen(1,"Max","Mustermann");
studentAnlegen(2,"Hans","Wurst");
studentAnlegen(3,"Herr","Gesangsverein");
FileOutputStream fos = new FileOutputStream("t.tmp");
ObjectOutputStream oos = new ObjectOutputStream(fos);
oos.writeObject(student);
oos.close();
FileInputStream fis = new FileInputStream("t.tmp");
ObjectInputStream ois = new ObjectInputStream(fis);
Student student = (Student) ois.readObject();
ois.close();
System.out.println(student.nachname);
}
}
Das Problem ist folgendes: jeder Aufruf der Methode "studentAnlegen() überschreibt das zuletzt geschriebene Objekt in der Datei.
Wie kann ich es erreichen, dass alle Objekte persistent werden und über das Attribut "matrikelnummer" wieder aufgerufen werden können?
Danke für die Hilfe!