Faça com o pstmt como mostrei anteriormente …
E outra coisa olhe se você não concatenou sua string sql de maneira errada, já apaguei uma vez para descobrir por que um select funcionava no banco e na aplicação não ai descobri esse erro.
Ex:
String sql = "SELECT nome, " +
"logradouro, " +
"bairro, " +
"numero, " +
"cidade" +
"FROM tab_funcionario " +
"WHERE cd_funcionario = ?";
Aparentemente está tudo certo, se você tirar as aspas e setar o parametro na base de dados iriam funcionar mais repare no campo cidade, se você der um System.out.println(sql) vai acontecer o seguinte:
SELECT nome, logradouro, bairro, numero, cidadeFROM tab_funcionario WHERE cd_funcionario = ?
E iria dar um erro na hora da consulta.
Abraço e utilize o pstmt !! =]