title: What is the best practice for saving and retrieving a java object?
body: <p>I am writing a java application that is a document store. I create my objects and save them to disk with serialization.</p>
  
  <p>I came across an error when I was loading my objects from disk, but I had actually changed my base object that it was serializing to.</p>
  
  <p>This seems like a bad way to manage storing objects, if I updated my software with changes to my base object all of my objects on disk would be invalid.</p>
  
  <p>Is there and guidance or best practice in dealing this issue? Or is there a better way for me to save my data?</p>