Obrigado por contribuir. Porém continua sempre aparecendo null no resultado do console, independente do campo que chame, estou usando o Gson pra chamar no banco passando um parametro.
public List<Celular> buscar(Celular celular){
String sql = "SELECT * FROM celular WHERE price=?";
List<Celular> celulars = new ArrayList();
try {
PreparedStatement pst = Conexao.getPreparedStatement(sql);
pst.setString(1, celular.getPrice());
ResultSet res = pst.executeQuery();
if(res.next()){
Celular celular = new Celular();
celular.setPrice(res.getString("price"));
celular.setModel(res.getString("model"));
celular.setBrand(res.getString("brand"));
celular.setPhotocel(res.getString("photocel"));
celular.setDate(res.getString("date"));
celular.setCode(res.getString("code"));
celulars.add(celular);
}
return celulars;
} catch (SQLException ex) {
Logger.getLogger(CelularDAO.class.getName()).log(Level.SEVERE, null, ex);
return null;
}
}
levando em consideração q com price vc quiz dizer preço, pode haver mais de um celular com este select, então o retorno do metodo ficaria melhor com List
coloca um break nesta linha e confira se essa Conexao n esta nula PreparedStatement pst = Conexao.getPreparedStatement(sql);
Fiz uma parte de classe DAO como essa há poucos dias, e em vez de citar “price”, “model” etc dentro do getString, eu chamava 1, 2, 3 etc. Segue o exemplo:
public List read() {
PreparedStatement state;
ResultSet rs;
try {
state = ConnectionFactory.getConnection().prepareStatement(SQLBUSCAR);
rs = state.executeQuery();
while (rs.next()) {
ContasModel contasModel = new ContasModel();
// Aqui vem o ponto em questão que eu falei que chamo números em vez de chamar o nome do campo.
contasModel.setConta(rs.getInt(1));
contasModel.setNome(rs.getString(2));
contasModel.setSaldo(rs.getDouble(3));
contasModel.setLimite(rs.getDouble(4));
contasBD.add(contasModel); // Adicionando numa ArrayList para trabalhar com os dados posteriormente
}
return contasBD;
} catch (SQLException ex) {
System.err.println("Erro: " + ex);
}
return null;
}
Veja se fazendo essa mudança ele para de dar query como null.
Isso aqui também é bom para termos uma noção se o problema está no código ou no seu BD. Faça o select direto do BD e veja se a query está null.