Bom dia É meu primeiro post aqui, nem sei se é o local correto !
Estou lendo : [url]http://docs.jboss.org/hibernate/orm/3.3/reference/en/html/queryhql.html[/url]
Agora estou querendo fazer o seguinte:
Um formulário de pesquisa de alunos, com 2 campos CURSO/CPF/ e 1 botão para as duas consultas.
PEQUISA NA TABELA ALUNOS:
hql.append(" SELECT * FROM ALUNOS WHERE ETC...:CPF");
PEQUISA NA TABELA CURSOS:
hql.append(" SELECT * FROM ALUNOS WHERE ETC...:CODIGO_CURSO");
Minha pergunta é : se eu tenho 2 campos 1 botão como deixar essa pesquisa dinâmica, se o usuário digitar no campo curso e clicar no botão ele vai executar a HQL1, se não ele execulta a HQL2. Este exemplo aqui eu passo a UF como parâmetro, funciona, e se for 2 parmetros de consultas diferentes ?@SuppressWarnings("unchecked")
public List<Filial> buscarFiliais(Uf uf) throws Exception{
try {
Session session = getSession();
StringBuilder hql = new StringBuilder();
hql.append(" select distinct f from Filial f, EnderecoPessoa ep, Uf uf, Pessoa p " +
" where p.codigoPessoa = ep.pessoa.codigoPessoa" +
" and ep.uf.codigo = uf.codigo " +
" and f.pessoa.codigoPessoa = p.codigoPessoa" +
" and uf.codigo = :codigoUf");
Query query= session.createQuery(hql.toString());
query.setParameter("codigoUf", uf.getCodigo());
return query.list();
} catch (Exception e) {
throw new Exception("Erro ao buscar filiais: " + e.getMessage());
}
}
Obrigada.