Boa noite, tenho uma tela de listagem e uma persistência que salva em xml meu problema e esse gostaria de listar os funcionarios salvos na minha persistência.
// persistência
public class Persistencia {
private XStream xstream = new XStream(new DomDriver());
private File arquivo = new File("banco.xml");
public void salvar(Banco b){
String xml = xstream.toXML(b);
try {
if(arquivo.exists())
arquivo.createNewFile();
PrintWriter gravar = new PrintWriter(arquivo);
gravar.print(xml);
gravar.close();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
public Banco recuperar(){
try {
if(arquivo.exists()){
FileInputStream fis = new FileInputStream(arquivo);
return(Banco) xstream.fromXML(arquivo);
}
} catch (FileNotFoundException e) {
}
return new Banco();
}
}
// Banco
public class Banco {
public ArrayList<Funcionario> getFuncionarios() {
return funcionarios;
}
public void add(Funcionario f){
funcionarios.add(f);
}
public void setFuncionarios(ArrayList<Funcionario> funcionarios) {
this.funcionarios = funcionarios;
}
private ArrayList<Funcionario> funcionarios = new ArrayList<Funcionario>();
}
// e tela de listagem
public class ListaFuncionario extends TelaPadrao {
private DefaultTableModel modelo;
private JTable tabela;
public ListaFuncionario (){
super("Mestre de Obras - Lista Func.");
//tabela
Funcionario[] funcionarios = {new Funcionario()};
modelo = new DefaultTableModel();
tabela = new JTable(modelo);
modelo.addColumn("Nome");
modelo.addColumn("CPF");
modelo.addColumn("Função");
modelo.addColumn("Salario");
Persistencia p = new Persistencia();
Banco banco = new Banco();
for (Funcionario func : funcionarios){
Object[] linha = new Object[] {
func.getNome(),
func.getCPF(),
func.getFuncao(),
func.getSalario()
};
modelo.addRow(linha);
}
JScrollPane conteiner = new JScrollPane(tabela);
conteiner.setBounds(30,150, 250, 150);
add(conteiner);
//botoes da tabela
FlowLayout ger = new FlowLayout();
JPanel pnButtons = new JPanel();
pnButtons.setLayout(ger);
JButton btEditar = new JButton("EDITAR");
JButton btDemitir = new JButton("DEMITIR");
JButton btSair = new JButton("SAIR");
pnButtons.add(btEditar);
pnButtons.add(btDemitir);
pnButtons.add(btSair);
add(pnButtons,BorderLayout.SOUTH);
}
public DefaultTableModel getModelo() {
return modelo;
}
public void setModelo(DefaultTableModel modelo) {
this.modelo = modelo;
}
public JTable getTabela() {
return tabela;
}
public void setTabela(JTable tabela) {
this.tabela = tabela;
}
}
gostaria que os nomes da persistência aparecessem nesta tela.