Salve Senhores!
Como faço para usar o cache de query do hibernate?
Pelo que vi na especificação basta fazer:
Query.setCacheable(true);
Porem a interface Query da JPA não possui o método setCacheable, ele está na inteface Query do Hibernate. Mas como faço para acessar este objeto do hibernate?
Estou enviando um trecho do código que estou utilizando.
public class PermissoesImpl implements Permissoes {
@PersistenceContext
private EntityManager em;
@Override
@SuppressWarnings("unchecked")
public Collection<Permissao> getPermissoes(Pessoa daPessoa) {
List<Permissao> permissoes = null;
if (daPessoa != null) {
GrupoAcesso grupo = daPessoa.getGrupoAcesso();
if (grupo != null) {
Query queryPermissoes = em.createNamedQuery("findPermissoesByGrupoAcesso");
queryPermissoes.setParameter("idGrupoAcesso", grupo.getId());
permissoes = queryPermissoes.getResultList();
}
}
return permissoes;
}
}
Obrigado!!!