Armazenar e imprimir varias linhas de uma tabela do BD

1 resposta
A

Pessoal, bom dia!

Gostaria de saber qual é a melhor forma de imprimir varias linhas de uma coluna do BD.

Estou conseguindo imprimir apenas o ultimo registro da tabela, preciso imprimir todos os registros da pesquisa.
Estou recebendo os registros em uma variavel String, sei que é errado. O correto seria recebe-los em um array, correto?

Porem, um array não recebe os registros pelo getString("coluna");

Desculpem a duvida basica demais, mas empaquei aí!

Segue o trecho do código com comentário aonde preciso de ajuda:

public String Consulta() throws SQLException,
						ClassNotFoundException{
		
		Class.forName("oracle.jdbc.driver.OracleDriver");
		Connection conn = DriverManager.getConnection(
				"jdbc:oracle:thin:@127.0.0.1:1521:XE", "andre", "senha");
		Statement stmt = conn.createStatement();
		ResultSet rs = stmt.executeQuery("SELECT LOGIN FROM USUARIO");
		
		
		String resultadoConsulta = "";
		
			
		while (rs.next()){
			  resultadoConsulta = rs.getString("LOGIN");
			  
			  /* resultadoConsulta ira receber todos os registros da coluna login
			   * porem cada registro novo ele apaga o antigo e atualiza, por isso só estou
			   * conseguindo imprimir o ultimo registro da coluna LOGIN. Entendo o "erro".
			   * Gostaria de saber a melhor forma de receber os dados. Array? Arraylist?
			   */
						
		}
		
		return resultadoConsulta;
	}

Obrigado pessoal!
Abraços e uma ótima semana
Andre

1 Resposta

Lucas_Lacerda_Gertel

Tenta assim:

public  List<ObjResultadoConsulta> Consulta() throws SQLException,   
                        ClassNotFoundException{   
           
        Class.forName("oracle.jdbc.driver.OracleDriver");   
        Connection conn = DriverManager.getConnection(   
                "jdbc:oracle:thin:@127.0.0.1:1521:XE", "andre", "senha");   
        Statement stmt = conn.createStatement();   
        ResultSet rs = stmt.executeQuery("SELECT LOGIN FROM USUARIO");   
           
           
        List<ObjResultadoConsulta> resultados = new ArrayList(ObjResultadoConsulta);
       
        while (rs.next()){   
              ObjResultadoConsulta consulta = new ObjResultadoConsulta();
              consulta.setAtributo(rs.getString("LOGIN"));

              resultados.add(consulta);
          
        }   
           
        return resultados;   
    }

Espero ter ajudado.
Abraços!

Criado 1 de dezembro de 2008
Ultima resposta 1 de dez. de 2008
Respostas 1
Participantes 2