Boa tarde pessoal,
antes de mais nada, quero esclarecer que realmente não achei no forum um tópico que me ajude. Com certeza deve ter algum, mas não encontrei e ralei bastante nisso desde sábado.
Estou trabalhando com java e flex. Estou fazendo uma aplicação CRUD para ir entendendo como funciona e tudo mais.
Possuo uma tabela no MySQL que se chama Cargos (com duas colunas ID_Cargo e Nome).
Fiz um select no java para me retornar em um arraylist o resultado do select, mas não estou conseguindo apresentar esse resultado, por exemplo, em um Syso…
A parte do meu código que eu faço a chamada no banco está abaixo. Se puderem me dar uma dica de como resolvo isso (reiterando, meu problema é em apresentar o resultado do select).
Obrigado,
[code] public static List getCargo(){
List list = new ArrayList();
try {
conecta();
String sql = "SELECT ID_Cargo, Nome FROM Cargo";
statement = conexao.createStatement();
resultset = statement.executeQuery(sql);
while(resultset.next()){
list.add(resultset.getString("ID_Cargo"));
list.add(resultset.getString("Nome"));
}
} catch (Exception e) {
e.printStackTrace();
System.out.println("erro no sql");
}
return list;
}[/code]
amigo faça o sequinte crie um objeto Cargo com duas
vaariaveis de instancia, um id e um nome.
assim:
public class Cargo {
private Integer idCargo;
private String nome;
//metodos get e set
}
public static List<Cargo> getCargo(){
List<Cargo> list = new ArrayList<Cargo>();
try {
conecta();
String sql = "SELECT ID_Cargo, Nome FROM Cargo";
statement = conexao.createStatement();
resultset = statement.executeQuery(sql);
while(resultset.next()){
Cargo c = new Cargo();
c.setIdCargo(resultset.getInt("ID_Cargo"));
c.setNome(resultset.getString("Nome"));
list.add(c);
}
} catch (Exception e) {
e.printStackTrace();
System.out.println("erro no sql");
}
return list;
}
fica bem mais organizado o teu progeto dessa forma.
Olhando rapidamente seu codigo acho que a principio a String SQL esta errada.
Tente executar ela no console do banco para ver se ela traz o que deseja.
E tambem acho que o While contem erros.
Abaixo codigo que fiz para meu sistema que faz a mesma coisa.
public ArrayList visualizar(int matricula) throws SQLException, ClassNotFoundException
{
ConectarBanco cb = new ConectarBanco();
Statement stm = cb.conectar();
String comando="SELECT matricula, nome, numero, imei, modelo, operadora, plano FROM celular WHERE matricula = " + matricula + ";";
rs = stm.executeQuery(comando);
while(rs.next())
{
Cadastro a = new Cadastro();
a.setMatricula(rs.getInt("matricula"));
a.setNome(rs.getString("nome"));
a.setNumero(rs.getString("numero"));
a.setImei(rs.getString("imei"));
a.setPlano(rs.getString("plano"));
a.setModelo(rs.getString("modelo"));
a.setOperadora(rs.getString("Operadora"));
lista.add(a);
}
return lista;
}