Witam, prosiłbym o pomoc w zadanku:
Proszę napisać niepubliczną klasę PrzechowywaczObiektow implementujaca interfejs PrzechowywaczI (w załączniku). Zadaniem klasy bedzie zapisywanie i odczytywanie z dysku zserializowanych obiektow. Powierzony klasie obiekt ma zostac zapisany na dysku i uzyskac identyfikator liczbowy pozwalajacy na jego odzyskanie. Identyfikator bedzie zwracany uzytkownikowi klasy.
Uwagi
- System ma obslugiwac wiecej niz jeden obiekt
- Modyfikacja interfejsu jest zabroniona.
- Klasę uruchamiającą program w tym projekcie pisze sam
Wiem, że potrzebna będzie jakaś np. lista do przechowywania id, użycie OutputStream (file + bufor) i ObjectOutput.
Z góry dziękuje za wszelkie wskazówki.
Kodu jest (bardzo) niewiele ale wstawiam:
import java.io.*;
import java.util.List;
public class PrzechowywaczObiektow implements PrzechowywaczI {
public int save(String path, Object obiektDoZapisu) {
try{
OutputStream file = new FileOutputStream( "tmp" );
OutputStream buffer = new BufferedOutputStream( file );
ObjectOutput output = new ObjectOutputStream( buffer );
try{
output.writeObject("tmp");
}
finally{
output.close();
}
}
catch(IOException ex){
System.out.println("IO Exception"+ ex);
}
return 0;
}
public Object read(int obiektDoOdczytu) {
try{
InputStream file = new FileInputStream( "tmp" );
InputStream buffer = new BufferedInputStream( file );
ObjectInput input = new ObjectInputStream ( buffer );
try{
}
}
finally{
}
}
catch(IOException ex){
System.out.println("IO Exception"+ ex);
}
return null;
}
}