[RESOLVIDO] Problemas ao percorer ResultSet

7 respostas
fabiomariner

olá, sou novato em JAVA!

como faço pra percorrer com WHILE um retorno de um método q é um ResultSet?

método q retorna um ResultSet

public ResultSet selecioar (String SQL) throws SQLException{
		ResultSet rs = null;		
		try{
			Class.forName("org.postgresql.Driver");
			String URL = "jdbc:postgresql://localhost/UNIP";
			String NOME = "postgres";
			String SENHA = "fabio";
			Connection con = DriverManager.getConnection(URL, NOME, SENHA);						
			Statement stmt = con.createStatement();
			//stmt.executeUpdate(SQL);
			ResultSet rst = stmt.executeQuery(SQL);			
			System.out.println("Chamada da classe DAO");
		}catch(ClassNotFoundException erroClass){ 
			System.out.println("Erro, classe JDBC não foi encontrada "+erroClass);
		}
		catch(SQLException erroSQL){
			System.out.println("Erro, classe JDBC não foi encontrada "+erroSQL);
		}			
		return rs;

onde quero percorrer

} else {		
			EmpresaDao dao = new EmpresaDao();		
			dao.adicionar("INSERT INTO cad_empresas (CNPJ , NOME) VALUES ("+request.getParameter("txt_cnpj")+" , '"+request.getParameter("txt_nome")+"')");			
			response.sendRedirect("index.jsp");
                       
			dao.selecioar("SLECT * FROM cad_empresas "); //isso está correto? (local e instanciação)		
		}
		
	while(---------?---------){ // quero o mesmo resultado de "while(rs.next()){"
%>
			<tr>			
			<td>---------?---------</td>	 //aqui quero mostrar o resultado da busca		
			<td>---------?---------</td>			
			</tr>
			</table>
<%

	}

%>

7 Respostas

R

Seu método tem que retornar o rst e não o rs.

Depois é só usar o convencional:

ResultSet rs = selecioar("query");

			while (rs.next()) {

				System.out.println(rs.getString("coluna"));
			
			}
adornes

Ae Rodrigo,

Faz tempo que não trabalho com jdbc, mas pelo que me lembro é algo simples assim:

while (rst.hasNext()){     
      rst.next();  // Isso posiciona o ResultSet na linha disponível

      rst.getString("atributo_x")  // Isso retorna um atributo
      rst.getString("atributo_y")  // Isso retorna um atributo
      rst.getString("atributo_z")  // Isso retorna um atributo
}  
rs.close();

Forte abraço!

fabiomariner

galera tenho q ir pra facul… assim q chegar tento implementar suas sujestões… desde já agradeço pela ajuda

fabiomariner

funcionou galera

eis o código

EmpresaDao dao = new EmpresaDao();		
	ResultSet rs = dao.selecioar("select * from cad_empresas");
	
	while(rs.next()){
	rs.getString("nome")
        rs.getString("cnpj")				
	}

abrigado pela ajuda

fabiomariner

ond defino como resolvido?

adornes

Fábio,

Edita a primeira mensagem do tópico. Ali será possível mudar o título do tópico. Aí você coloca no início [RESOLVIDO].

Forte abraço!

fabiomariner

obrigado novamente

Criado 4 de maio de 2012
Ultima resposta 4 de mai. de 2012
Respostas 7
Participantes 3