Salve a tutti, ho capito come funziona la serializzazione, ma non riesco a implementarla in modo diciamo lineare.
Ho pensato di fare una classe Oggett, per avere un generico oggetto in una classe Utilizza che sarà quella coi metodi scrivi() e leggi(), nella classe Test richiamo le varie funzioni:
codice:
import java.io.*;
public class Oggett implements Serializable
{
private int valore;
private String nome;
public Oggett()
{
valore = 0;
nome = null;
}
public Oggett(int v , String n)
{
valore = v;
nome = n;
}
}
import java.io.*;
public class Utilizza
{
private Oggett ogg;
public Utilizza()
{
ogg = new Oggett();
}
public Utilizza(int v,String n)
{
ogg = new Oggett(v,n);
}
public void scrivi() throws ClassNotFoundException , IOException
{
ObjectOutputStream out = new ObjectOutputStream(new FileOutputStream("salvadato"));
out.writeObject(ogg);
out.close();
}
public void leggi() throws ClassNotFoundException , IOException
{
ObjectInputStream in = new ObjectInputStream(new FileInputStream("salvadato"));
Oggett ogg3 = (Oggett)in.readObject();
}
}
import java.io.*;
public class Test
{
public static void main(String [] args) throws Exception
{
int val = 4;
String parola = "Ciao";
Utilizza u = new Utilizza(val,parola);
u.scrivi();
?
?
}
}
Ecco, mi sono fermato a scrivere u.scrivi() in cui dovrebbe salvare l'oggetto di Oggett; ora il mio dubbio è questo: al fine di usare la serializzazione esattamente per lo scopo per cui è stata creata cosa devo fare, creare un nuovo oggetto Utilizza u2 e chiamare u2.leggi()? ma in questo modo avrò 2 oggetti che hanno le stesse informazioni, u e u2? Oppure devo farlo in altre parti del programma?
Cioè in pratica non capisco la struttura del programma per utilizzare questa tecnica di persistenza dati.
Ringrazio chiunque mi possa indicare soluzioni