JPA + Consultas com Order By, Like e Limit

3 respostas
J

Dae galera… eu estou migrando um sistema que usa jsp e Servlet apenas sem nenhum framework para Struts 2 e JPA, no meu DAO eu tenho uma consulta que é utilizada para paginação de uma table… tem algum método especifico ou algo do tipo da JPA que possa me ajudar nisso ou vou ter que escrever essa Query ai utilizando aquela NamedQuery(name = “Documento.findByUsuarioPaginacao”… ??

strSQL.append(" select * from Documento d"); strSQL.append(" where NumDocumento like <:pNUM_DOCUMENTO:> "); strSQL.append(" and DescDocumento like <:pDESC_DOCUMENTO:> "); strSQL.append(" and SituacaoDocumento like <:pSITUACAO:> "); strSQL.append(" and CodTipoDocumento like <:pCOD_TIPO_DOCUMENTO:> "); strSQL.append(" and CodPais like <:pCOD_PAIS:> "); strSQL.append(" and CodUf like <:pCOD_ESTADO:> "); strSQL.append(" and CodCidade like <:pCOD_CIDADE:> "); strSQL.append(" and CodPessoa like <:pCOD_PESSOA:> " ); strSQL.append(" and CodOrgao like <:pCOD_ORGAO:> " ); strSQL.append(" and DataDocumento >= <:pDATA_INICIO:> " ); strSQL.append(" Order by "+pag.getCampoOrdem()+" "+pag.getTipoOrdem() + ", DataCriacaoDocumento" ); strSQL.append(" Limit "+Integer.toString(pgAuxiliar*pag.getPagConfig())+","+Integer.toString(pag.getPagConfig()));

Abraço!!

3 Respostas

J

E dei uma procurada e nao achei nada sobre isso… sera que o Hibernate complica demais para consultas mais avançadas?

jgbt

bom, não tem muita coisa de avançada sua consulta.
sim o hibernate tem mecanismos p/ te ajudar.
procure po Criteria, e pelos metodos minResults e maxResults.
isso deve resolver seu problema.

[]´s

J

Hehe… eu sei… ela é super simples… quando eu falei sobre consultas mais avançadas… isso para o Hibernate!!, eu estava me referindo a consultas diferentes do select * from tabela… que é gerado, estava me referindo a funções proprias de cada banco…etc…
Valeu…
Abraço!!

Criado 25 de janeiro de 2008
Ultima resposta 25 de jan. de 2008
Respostas 3
Participantes 2