segunda-feira, 10 de novembro de 2014

Serializar objetos java

package samples;
import java.io.BufferedInputStream;
import java.io.BufferedOutputStream;
import java.io.File;
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.InputStream;
import java.io.ObjectInput;
import java.io.ObjectInputStream;
import java.io.ObjectOutput;
import java.io.ObjectOutputStream;
import java.io.OutputStream;

public class SerializerSample {

 public static void main(String[] args) {
  
  DadosVO dados = new DadosVO();
  dados.setNome("Nome do usuario");
  dados.setMaisDados(new MaisDadosVO());
  dados.getMaisDados().setEndereco("Endereco");
  
  
  File serializedXMLs = new File("c:/Marcel/sampleSerialize.ser");
  
  // se o arquivo existe, deserializa, senao serializa.
  if (serializedXMLs.exists()) {
   try (InputStream file = new FileInputStream(serializedXMLs);
     InputStream buffer = new BufferedInputStream(file);
     ObjectInput input = new ObjectInputStream(buffer);) {
    DadosVO dadosDeserializados = (DadosVO) input.readObject();
    System.out.println("Nome: "+dadosDeserializados.getNome());
    System.out.println("Endereço: "+dadosDeserializados.getMaisDados().getEndereco());
   } catch (Exception ex) {
    ex.printStackTrace();
   }
  } else {
   // serialize the List
   try (OutputStream file = new FileOutputStream(serializedXMLs);
     OutputStream buffer = new BufferedOutputStream(file);
     ObjectOutput output = new ObjectOutputStream(buffer);) {
    output.writeObject(dados);
    System.out.println("objeto serializado.");
   } catch (IOException ex) {
    ex.printStackTrace();
    serializedXMLs.delete();
   }
  }
 }
 
}

Nenhum comentário:

Postar um comentário