Boa tarde gente, precisava de uma ajudinha de vcs. tenho o metodo listar, eu queria listar a classe pai e tbm as classes filhas juntas. Sera que isso e possivel, seria em base desse sql. O Sql ta tudo ok, so o array que eu nao sei como fazer. Obrigado
[code] public List Listar(){
String sql = “SELECT cliente., cpfcliente, rgcliente, NULL AS cnpjcliente, NULL AS inscricaoestadualcliente FROM cliente INNER JOIN clientefisico ON cliente.codcliente = clientefisico.Cliente_codcliente UNION SELECT cliente., NULL AS cpfcliente, NULL AS rgcliente, cnpjcliente, inscricaoestadualcliente FROM cliente INNER JOIN clientejuridico ON cliente.codcliente = clientejuridico.Cliente_codcliente”;//aqui é a query
List listar = new ArrayList();
List listar = new ArrayList();
List listar = new ArrayList();
try{
PreparedStatement ps = con.prepareStatement(sql);//você prepara a query pra ser executada
ResultSet rs = ps.executeQuery();//executa a query retornando os dados num resultSet
while(rs.next()){//enquanto tiver registro...
ClienteFisico fisico = new ClienteFisico();
ClienteJuridico juridico = new ClienteJuridico();
Cliente cliente = new Cliente();
cliente.setCodcliente(rs.getInt(1));
cliente.setNomecliente(rs.getString(2));
cliente.setLogradourocliente(rs.getString(3));
cliente.setNumerocliente(rs.getInt(4));
cliente.setBairrocliente(rs.getString(5));
cliente.setCidadecliente(rs.getString(6));
cliente.setUfcliente(rs.getString(7));
cliente.setCepcliente(rs.getString(8));
cliente.setEmailcliente(rs.getString(9));
cliente.setTelefonecliente(rs.getString(10));
cliente.setComplementocliente(rs.getString(11));
cliente.setCelularcliente(rs.getString(12));
fisico.setCpfcliente(rs.getString(13));
fisico.setRgcliente(rs.getString(14));
juridico.setCnpjcliente(rs.getString(15));
juridico.setInscricaoestadualcliente(rs.getString(16));
listar.add(cliente);//...ele acrescenta na sua lista
}
return listar;//retorna a lista
}catch(Exception ex){//se der algum erro, ele manda a mensagem com o erro ocorrido
JOptionPane.showMessageDialog(null, ex.getMessage(), "Erro", JOptionPane.ERROR_MESSAGE);
return null;
}
}[/code]