Some applications must keep small amounts of information between the
times they are run. For example a personal calendar or personal
information system, will store information after each session. Instead
of using a Random access file or even a database to store this
information, use Java Object Serialization. Object serialization is fast
and reliable, and it restores the complete state of all of your objects.
To use Object Serialization, use the following code (JDK 1.1):
FileOutputStream fos = new FileOutputStream(
"c:\\store\\objects.ser");
ObjectOutputStream oos = new ObjectOutputStream( fos );
// Write out the root Object of your in-memory object structure.
// Object Serialization will write out all of the objects to the disk
file.
fos.writeObject( rootObject );
To read them back in, reverse the process with:
FileInputStream fis = new FileInputStream( "c:\\store\\object.ser");
ObjectInputStream oos = new ObjectInputStream( fis );
Object root = oos.readObject();
You must remember to "implement" the interface java.io.Serializable in
all of the classes that are to be written to disk:
public class Person implements java.io.Serializable
{
. . .
}
This technique works when you want to save the entire state of your
memory to disk at one time. If you need to store single objects, then
you will need a different architecture.