2
respostas

Como fazer Native Query com o sql fora da classe java

Vi que o professor explicou como colocar a consulta SQL em cima do método com a @Query(SELECT * FROM pessoas;), porém eu gostaria de externalizar esse SQL, tirar ele da classe Java, e colocar a consulta em um arquivo externo(um XML) e chamar a consulta no meu método.

2 respostas

Oi Jair,

Dá para fazer sim dessa forma que você deseja.

Mas para isso vai precisar fazer o seguinte:

  1. Criar um arquivo chamado jpa-named-queries.properties no diretório src/main/resources/META-INF.
  2. Nesse arquivo você define sua query, por exemplo: Topico.buscarTodos=SELECT t FROM Topico t
  3. No repository você define o método com o mesmo nome que colocou no arquivo properties:
public interface TopicoRepository extends JpaRepository<Topico, Long> {
    List<Topico> buscarTodos();
}

Bons estudos!

que show.. muito obrigado pela rápida resposta, resolveu o meu problema... braço!