bruce1010:
Sou novo em programação, então não entendo muito ;(..
Conseguir resolver isso da seguinte maneira...
st = con.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE, ResultSet.CONCUR_READ_ONLY);
while(rs.next()){
system.out.println(rs.getString("cadNome");
}
Não sei se é a maneira certa para se fazer, mas só conseguir mostrar todos os campos do banco dessa forma
Tem duas coisas aqui que estão erradas:
1 - "Sou novo em programação e não entendo muito". Você não saber, não é demérito. Demérito é você não saber e não ter a mínima vontade e/ou iniciativa de ir atrás do por que não funcionar.
2 - O resultado é apresentado por completo nesta abordagem por que você está tendo acesso à todos os elementos do ResultSet, todos os resultados estão nele e são apresentados.
Você conhece arrays? Um ResultSet é como um array, com pequenas diferenças.
A principal diferença é que quando você coloca valores num array, eles ficam lá até que você os altere.
No caso do ResultSet, quando você lê uma posição (chamando o método next), quando passa para o próximo, ele se torna inacessível, como se tivesse sido apagado. Ou seja, você nunca pode voltar numa posição do ResultSet que já foi lida.
Então, quando você verifica se há elementos no ResultSet, para iniciar o while, ele está entrando no primeiro resultado. Se você invocar qualquer método get, como o getString, você terá o resultado de acordo com o que está pedindo.
Veja que no modo anterior, você entra no while, acessando a primeira posição. Se ele entra no while, você o envia para o método de teste, através do return. Após recebê-lo no método de teste, você chama de novo o método next, passando ao segundo resultado. Então, tem a impressão de não conseguir acessar o primeiro resultado.
Sugiro fortemente que você estude. Essa história de "aprender fazendo" pode até funcionar, mas você nunca saberá os por quês das coisas. Sem saber como acontece, fica difícil conseguir fazer direito.