Pessoal, primeira vez que estou utilizando sql nativo no hibernate. Gostaria de saber como faço para fazer um where utilizando o parametro que estou passando no método. Ex: where s.codigo = solicitacao;
public List<DeterminacaoVO> buscarDeterminacaoPorSolicitacao(
Integer solicitacao) {
StringBuilder sql = new StringBuilder();
sql.append("select distinct d.codigo, d.descricao, ti.descricao, e.sigla, e.descricao from determinacao d inner join solicitacaodeterminacao sol on sol.id_determinacao = d.codigo inner join solicitacaodeanalise s on s.codigo = sol.solicitacao_codigo inner join amostra a on a.codigo = sol.id_amostra inner join tipodeterminacao ti on ti.codigo = d.tipoDeterminacao_codigo inner join determinacaoelemento det on det.id_determinacao = d.codigo inner join elemento e on e.codigo = det.id_elemento ");
List<DeterminacaoVO> listaRetorno = new ArrayList<DeterminacaoVO>();
try {
Session session = HibernateUtil.getSessionFactory().openSession();
SQLQuery query = session.createSQLQuery(sql.toString());
List lista = query.list();
for (Object obj : lista) {
Object[] determinacoes = (Object[]) obj;
DeterminacaoVO det = new DeterminacaoVO();
det.setCodigo(determinacoes[0]);
det.setDeterminacao(determinacoes[1]);
det.setTipo(determinacoes[2]);
det.setSigla(determinacoes[3]);
det.setElemento(determinacoes[4]);
listaRetorno.add(det);
}
} catch (Exception e) {
e.printStackTrace();
}
return listaRetorno;
}
Desde já agradeço galera.