Olá pessoal, estou começando a utilizar persistência de dados em xml com a api xStream, consegui implementar os métodos de salvar e recuperar alocações, no entanto surgiu no momento a necessidade de persistir dados de salas e eventos sendo ambos em arquivos xml distintos, deste modo surgiu a seguinte dúvida, tem como utilizar uma persistência genérica, onde todos os xml poderiam se criados por única classe de persistência ou teria que criar um classe de persistência para cada, alguém pode me ajudar?
classe de persistência de alocação:
public class PersistenciaAlocacoes {
private File file = new File(“alocacoes.xml”);
public void salvarAlocacao(Object object, String nomeArquivo){
XStream xStream = new XStream(new DomDriver());
String xml = xStream.toXML(object);
try {
File file = new File(nomeArquivo);
if (!file.exists())
file.createNewFile();
PrintWriter escritor = new PrintWriter(file);
escritor.write(xml);
escritor.flush();
escritor.close();
} catch (FileNotFoundException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
}
public ArrayList<Alocacao> recuperarAlocacao(){
XStream xStream = new XStream(new DomDriver());
ArrayList<Alocacao> alocacoes = new ArrayList<Alocacao>();
try {
if (!file.exists())
salvarAlocacao(new ArrayList<Alocacao>(), "alocacoes.xml");
FileReader ler = new FileReader(file);
alocacoes = (ArrayList<Alocacao>) xStream.fromXML(ler);
} catch (FileNotFoundException e) {
return alocacoes;
}
return alocacoes;
}
}
Obrigado a todos desde já!