1
resposta

HQL VS JPQL

Se Spring Boot Data JPA utiliza o Hibernate, como padrão, para sua implementação , não posso usar HQL quando implemento métodos na interface que hereda de JPAREpository ?

1 resposta

JPQL é a linguagem de consulta de entidade padrão do JPA, enquanto o HQL estende o JPQL e adiciona alguns recursos específicos do Hibernate. JpaRepository é o default, mas dá para usar HQL também.

    @Autowired
    EntityManager entityManager;

    @RequestMapping("/query")
    @ResponseBody
    public String testQuery() {

        Query query = entityManager.createQuery("select u from User u");
        List<User> users = query.getResultList();
        users.forEach(u -> System.out.println(u.getFirstname()));
        return "";
    }