Fórum Limpa cache de um List #499698
30/10/2014
0
Metodos para carregar a lista de objetos
public void preencherTabelaJuridica(String cliente) {
clientes = new LinkedList<>();
clientes = controle.getByNameJuridica(cliente);
try {
tbCliente.setModel(new MyTableModel(Cliente.class, clientes, tbCliente) {
boolean[] canEdit = new boolean[]{
false
};
@Override
public boolean isCellEditable(int rowIndex, int columnIndex) {
return false;
}
});
}
Metodo que carregar um table de acordo com o objeto do table selecionado
private void addContaCliente() {
tbCliente.getSelectionModel().addListSelectionListener(new ListSelectionListener() {
@Override
public void valueChanged(ListSelectionEvent e) {
try {
Cliente clienteSelecionado = new Cliente();
clienteSelecionado.setContasBancarias(new LinkedList<ContaBancaria>());
if (tbCliente.getSelectedRow() >= 0) {
clienteSelecionado = clientes.get(tbCliente.getSelectedRow());
contas = clientes.get(tbCliente.getSelectedRow()).getContasBancarias();
tbContas.setModel(new MyTableModel(ContaBancaria.class, clienteSelecionado.getContasBancarias(), tbContas));
}
} catch (Exception erro) {
System.out.println(erro);
}
}
});
}
John Lima
Curtir tópico
+ 0Posts
30/10/2014
Ronaldo Lanhellas
Gostei + 0
30/10/2014
John Lima
O que está acontecendo é o seguinte quando eu executo a aplicação e faço a pesquisa e retorno a lista de cliente com suas listas bancarias o jtables são preenchidos normalmente, porem se eu fizer uma inclusão de outra conta bancaria o sistema só preencher as contas que antes da inclusão, como se fosse preenchido pelo cache
Gostei + 0
31/10/2014
Ronaldo Lanhellas
Gostei + 0
31/10/2014
John Lima
Gostei + 0
31/10/2014
Ronaldo Lanhellas
Vai perder o desempenho sim se ficar fazendo clear() direto. Você tem que repensar sobre a sua estrutura. Pois existem diversas formas de resolver seu problema, leia este artigo para ver se tem haver com seu problema: https://www.devmedia.com.br/entendendo-o-java-persistencecontext-extended-e-transient/30493
Gostei + 0
31/10/2014
John Lima
Gostei + 0
31/10/2014
John Lima
Gostei + 0
05/11/2014
Ronaldo Lanhellas
Isso mesmo, ótimo que conseguiu.
Gostei + 0
Clique aqui para fazer login e interagir na Comunidade :)