Para realizar tal tarefa tive que fazer um select count(*). Alguém conhece outra forma?
Obrigado,
Felipe
Para realizar tal tarefa tive que fazer um select count(*). Alguém conhece outra forma?
Obrigado,
Felipe
Faz assim, por exemplo :
Query query = em.createQuery(“SELECT p FROM MyClass p”);
int qte_row = query.getResultList().size();
query.setFirstResult(0);
query.setMaxResults(10);
Há alguns jeitos. Aqui mais um:
Criteria crit = session.createCriteria(Product.class);
crit.setProjection(Projections.rowCount());
List results = crit.list();
[quote=Italivio]Faz assim, por exemplo :
Query query = em.createQuery(“SELECT p FROM MyClass p”);
int qte_row = query.getResultList().size();
query.setFirstResult(0);
query.setMaxResults(10);
[/quote]
Essa seria a melhor alternativa, mas quando faço getResultList().size() é feito fetch completo da lista
[quote=LIPE]Há alguns jeitos. Aqui mais um:
Criteria crit = session.createCriteria(Product.class);
crit.setProjection(Projections.rowCount());
List results = crit.list();
[/quote]
Cheguei a esbarrar com essa forma quando estava pesquisando, mas no meu caso acho que ela não serve por dois motivos:
No hibernate teriam duas formas: projections no criteria ou filters na query.
Na JPA, ate onde eu sei, nao tem como sem usar o count. JPA 2.0 vem para suprir essas pequenas necessidades.
Pessoal,
Esbarrei no mesmo problema! Alguma solução? ou será que vou ter que fazer algo como um SELECT COUNT ?
[]s
Gostaria de uma opção sem utilizar Criteria… Usando somente a especificação JPA
Acho que só com JPA 2 então, quando sair.