Outra coisa. Sempre use os gets com o nome do campo, não com os índices. Isso facilita a manutenção, já que alterar a ordem das colunas no SQL ou incluir campos no meio dos já existentes não estragam esse código.
E
entanglement
Sem contar que a perda de desempenho por usar nomes em vez de índices é exatamente zero. Uma vez eu fiz essa medida e vi que tanto faz usar nomes quanto índices em termos de desempenho, ou seja, sempre use nomes em vez de índices.
Eu acredito que só exista essa opção de usar índices porque você pode também fazer uma ferramenta que preencha uma JTable (por exemplo) a partir de um ResultSet sem precisar saber os nomes das colunas, mas isso é mais exceção que regra.
guisantogui
Ta certo era realment a criação do novo resultSet, soh uma coisa vinny, usando os get(String) não seria mais custoso em termos de performance do que o get(int) ??
vlw
ViniGodoy
É mais lento? Sim.
É um problema por causa disso? Não.
A falta de clareza no código por usar os índices, além de depender das ordens dos campos é um inconveniente muitíssimo maior do que levar alguns milissegundos a mais para ler o dado.
Prefira sempre um código claro à um código otimizado. Você só deve pensar em reduzir a qualidade do código se você tiver em mãos um problema real de performance, comprovado por um profiler. Ainda assim, é importante seguir essas dicas: http://www.guj.com.br/posts/list/15/31346.java#989991
guisantogui
Já que estamos falando de performance, vou mudar um pouco o foco, já li inumeras apostilas, mas até hoje não sei ql é a exata função de uma interface, tipo, ela soh instancia os metodos e deixam eles lá?