Olá, boa tarde à todos, este é meu primeiro tópico e gostaria da ajuda de vocês…
Estou querendo refatorar o código do sistema da minha empresa, já que é repetido diversas vezes a mesma linha de codigo no sistema, entao criei o método abaixo para que retorne um resultset, mas esta dando erro no return
[code]private ResultSet retornaConsulta(String sql) {
try {
Statement st = conn.createStatement();
ResultSet rs = null;
rs = st.executeQuery(sql);
} catch (SQLException ex) {
ex.printStackTrace();
}
return rs; //<erro aqui no rs, cannot find Symbol
}[/code]
No método que irá chamar o retornaConsulta é assim
public void importaEstados() {
Statement st;
try {
st = conn.createStatement();
ResultSet rs = st.executeQuery("select * from estados");
while (rs.next()) {
String descricaoEstado = rs.getString("descricao");
System.out.println("Salvando estado: " + descricaoEstado + " ");
UF uf = new UF();
uf.setNome(descricaoEstado);
uf.setSigla(descricaoEstado);
uf.setFreteMaritimo(rs.getBoolean("freteMaritimo"));
salvaAcao.save(uf);
System.out.println("Estado Salvo.");
}
st.close();
} catch (SQLException e) {
e.printStackTrace();
}
}
Então gostaria de refatorar para ficar apena assim
public void importaEstados() {
try {
ResultSet rs =retornaConsulta("select * from estados");
while (rs.next()) {
String descricaoEstado = rs.getString("descricao");
System.out.println("Salvando estado: " + descricaoEstado + " ");
UF uf = new UF();
uf.setNome(descricaoEstado);
uf.setSigla(descricaoEstado);
uf.setFreteMaritimo(rs.getBoolean("freteMaritimo"));
salvaAcao.save(uf);
System.out.println("Estado Salvo.");
}
} catch (Exception e) {
e.printStackTrace();
}
}
E refatorando com o metodo que eu estou fazendo, numa classe de 6k de linhas vai dar uma economia de linhas de código, e ficar melhor a manutenção. Então gostaria de saber o que está dando de erro no return do meu método.
Desde já agradeço a ajuda!