boa noite
eu estou com o seguinte metodo:
public List<VOInstituicao> buscaHieraequia(int idtInstituicao){
List<VOInstituicao> lista = new ArrayList<VOInstituicao>();
PreparedStatement ps = null;
ResultSet rs = null;
VOInstituicao vo = null;
String query = "select nme_instituicao,cod_instituicao_pai from tb_instituicao where idt_instituicao = "+idtInstituicao;
try {
ps = this.getCnn().prepareStatement(query);
rs = ps.executeQuery(query);
if(rs.next()){
vo = new VOInstituicao();
vo.setCodInstituicaoPai(rs.getInt("cod_instituicao_pai"));
vo.setNmeInstituicao(rs.getString("nme_instituicao"));
lista.add(vo);
}
while(true){
String query2 = "select nme_instituicao,cod_instituicao_pai from tb_instituicao where idt_instituicao = "+ vo.getCodInstituicaoPai();// Não esta funcionando daqui para baixo, ele so pega o primeiro pai
PreparedStatement ps2 = this.getCnn().prepareStatement(query2);
ResultSet rs2 = ps.executeQuery(query2);
vo = new VOInstituicao();
while(rs2.next()){
vo.setCodInstituicaoPai(rs2.getInt("cod_instituicao_pai"));
vo.setNmeInstituicao(rs2.getString("nme_instituicao"));
lista.add(vo);
if(vo.getCodInstituicaoPai() == null){
break;
}
}
}
} catch (SQLException ex) {
Logger.getLogger(DAOInstituicao.class.getName()).log(Level.SEVERE, null, ex);
}
return lista;
}
a minha intenção é trazer uma lista da hierarquia do objeto escolhido, mas meu metodo esta entrando em loop,
se alguem puder me ajudar eu serei eternamente grato
Muito Obrigado.