Metodo gerar backup

3 respostas
denisjunio

Bom Dia amigos.

Estou com uma duvida cruel em java.
Estou fazendo um trabalho que existem 6 classes, nas quais são:
Aluno, Matricula, Professor, Disciplina, Mestre, Doutor.
Já fiz todos metodos get/set, equals,tostring, enfim, o que foi pedido. Só que me deparei com dois topicos no exercicio que não estou conseguindo fazer, é a seguinte:

-> Crie uma classe chamada BD que armazene uma lista sem repetição (HashSet, por exemplo) de Aluno, uma
de Disciplina, uma de Matricula, uma de Professor (que armazenará tanto mestres como doutores).

-> Nessa classe BD, deverá existir um método gerarBackup que irá retornar um StringBuffer com um
cabeçalho contendo a data atual no formato abaixo e o conteúdo textual (gerado pelo método toString) de
todos os objetos de todas as listas. Observe exemplo:

Backup realizado em 5 de outubro de 2009 às 12:04:34
Alunos
1;Carlos Alberto;07/08/89
2;José Marcos;02/01/86
Professores
[telefone removido];Daniel de Paula;1000.00;Mestre
[telefone removido];César Couto;1400.00;Doutor
Disciplinas
100;LTP-III;60;[telefone removido]
101;ED-I;80;[telefone removido]
Matriculas
100;2;99
101;1;NULL

Se puderem me ajudar. Agradeço Demais.

Obrigado a todos.

3 Respostas

CrOnNoS

e o que você fez dessa parte onde está o “problema” ?
Onde está a dúvida exatamente ?
Não sabe mexer com as classes StringBuffer e HashSet ? Seja mais específico se possível.

denisjunio

Bom Dia Cronnos.

A classe Bd já fiz:

package entidades;

import java.util.ArrayList;
import java.util.Collection;

public class BD {

Collection todosAlunos = new ArrayList();

Collection todasDisciplinas = new ArrayList();

Collection todasMatriculas = new ArrayList();

Collection todosProfessores = new ArrayList();

A minha duvida está em como fazer o metodo gerarBackup, que irá retornar um StringBuffer com um
cabeçalho contendo a data atual no formato abaixo e o conteúdo textual (gerado pelo método toString) de
todos os objetos de todas as listas. Observe exemplo:

Backup realizado em 5 de outubro de 2009 às 12:04:34
Alunos
1;Carlos Alberto;07/08/89
2;José Marcos;02/01/86
Professores
[telefone removido];Daniel de Paula;1000.00;Mestre
[telefone removido];César Couto;1400.00;Doutor
Disciplinas
100;LTP-III;60;[telefone removido]
101;ED-I;80;[telefone removido]
Matriculas
100;2;99
101;1;NULL

Estou lendo mais sobre a classe StringBuffer e seu metodo append. que acredito que funcione pegando todos os metodos toString(Sobrescritos) das outras classes, para que gere o resultado acima.

CrOnNoS
O método append funciona da mesma forma que fazer

String nome = "Alberto " + "José " + da Sílva;

com StringBuffer seria

nome.append("Alberto ").append("José ").append(da Silva);
Para pegar a data atual, você pode criar um objeto de SimpleDateFormat para especificar o formato da data e depois instanciar um objeto Date que conterá a data atual. Um exemplo dos comandos:

SimpleDateFormat formatador = new SimpleDateFormat(dd/MM/yyyy);

String data = formatador.format(data);

System.out.println(data);
Criado 28 de novembro de 2009
Ultima resposta 30 de nov. de 2009
Respostas 3
Participantes 2