Pular para o conteúdo principal

Serialização de objetos II - Lendo Objetos de Arquivos

Recuperando seus objetos diretamente de arquivos


Vamos utilizar o post anterior ( Serialização I: salvando Objetos em arquivos) para mostrar o caminho de volta , como pegamos os arquivos e recuperamos os objetos serializados armazenados neles.
Vamos pegar a Classe auxiliar armazenamento e implementar o metodo CarregarDados , veja abaixo como fica a classe

Classe Armazenamento

import java.util.ArrayList;
import java.io.*;

/**
 *
 * @author JoaoSantanna
 */
public class Armazenamento {

    public Object carregarDados() {

        Object resultado = null;

        try {
            //tem que ser o mesmo nome do arquivo de salvamento
            FileInputStream fs = new FileInputStream("dadosApp.arq");
            ObjectInputStream os = new ObjectInputStream(fs);
            resultado = os.readObject( );

        return resultado;

        } catch (Exception ex) {
            return null;
        }


    }

    public int salvarDados(ArrayList dados) {
        try {...


Depois disso basta colocar o código necessário na classe principal do exemplo anterior como mostra o exemplo a seguir


public class ManipulacaoArquivo {

    /**
     * @param args the command line arguments
     */
    public static void main(String[] args) {
        // TODO code application logic here
        
        Aluno a1,a2,a3;
        Armazenamento dados = new Armazenamento( );
        a1 = new Aluno("Joao", 33);
        a2 = new Aluno("Pedro", 25);
        a3 = new Aluno("Maria", 30);
        
        ArrayList  turma = new ArrayList( );
        
        turma.add(a1);
        turma.add(a2);
        turma.add(a3);
        //imprime os dados da turma
        for ( Aluno a : turma){
            System.out.println("Nome:" + a.getNome( ) + " Idade:" + a.getIdade( ) );
        }  
       dados.salvarDados(turma);
       //ler dados do arquivo colocar no array e imprimir
       ArrayList  turmaDadosRecuperados = (ArrayList ) dados.carregarDados( );
        System.out.println("Dados Lidos do Arquivo");         
       for ( Aluno a : turmaDadosRecuperados){
            System.out.println("Nome:" + a.getNome( ) + " Idade:" + a.getIdade( ) );
        } 

Pronto basta isso e você consegue carregar novamente todos os dados dos objetos que estavam ativos quando ocorreu a serialização.

Caso alguma coisa não funcione ou se tiver duvida comente no post .

Abraço a todos.

Comentários

Postagens mais visitadas deste blog

Projetos em Sala de aula

A educação baseada em projetos vem sendo usada como uma metodologia poderosa para melhor preparar estudantes do século 21, já que leva os alunos a trabalhar em conjunto, se organizar, pesquisar e executar harmonicamente. Porém, antes de levar a metodologia para a sala de aula, será que os professores sabem como e quais projetos trabalhar em suas disciplinas? Uma dessas novidades é o  PBLU (Project Based Learning University ), plataforma gratuita que ajuda a capacitar professores para o uso de projetos em suas disciplinas, como uma forma de agregar conteúdo e motivar os estudantes. Conheça os oito pontos principais para um bom programa de aprendizagem baseada em projeto: Ter conteúdo relevante.   O objetivo da abordagem é trabalhar os conceitos-chave das disciplinas acadêmicas a partir de um projeto. Desenvolver habilidades para o século 21.   Ao longo do projeto, os alunos deverão buscar uma resposta a um problema. Para isso, eles deverão buscar referências...

Video Aulas de Java já disponíveis no 4Shared

Turma segue as video aulas já disponíveis para download no 4Shared , espero que vocês gostem das aulas e por favor postem um comentario no blog dizendo o que vc's acharam preciso desse feed back para o constante aprimoramento das aulas . Basta escolher o arquivo clickar  no link para download ( tenha paciencia os arquivos são grandes ) <p>&lt;p&gt;&amp;amp;amp;amp;lt;p&amp;amp;amp;amp;gt;&amp;amp;amp;amp;amp;amp;amp;lt;br&amp;amp;amp;amp;amp;amp;amp;gt;&amp;amp;amp;amp;amp;amp;amp;lt;br&amp;amp;amp;amp;amp;amp;amp;gt;se&amp;amp;amp;amp;lt;/p&amp;amp;amp;amp;gt;&lt;/p&gt;</p> Se a Janela de Download acima não funcionar tente acessar os arquivos usando o seguinte link http://www.4shared.com/dir/34812571/bf01348d/VideoAulas.html Bom estudo  :-)

Sistemas distribuidos: Enviando mensagens TCP Parte II - Servidor

Igual ao servidor UDP esse servidor só vai receber a mensagem e envia-la de volta , ou seja é um servidor de ECO mas com boa vontade basta fazer algumas alterações que vc tem um servidor de chat :-) . Server TCP: import java.net.*; import java.io.*; public class TCPServer { public static void main(String[] args) { try { int serverPort = 7896; ServerSocket listenSocket = new ServerSocket(serverPort); //socket de escuta o socket que vai atender as requisições while(true){ Socket client = listenSocket.accept( ); Connection c = new Connection(client); //precisamos criar a classe conection que vai //inicializar nossas threads para atender a cada requisição } } catch (IOException e) { System.out.println("Listem :" + e.getMessage( )); } }//fim do main }//fim da classe Depois de fin...