1
resposta

Nomes alternativos de métodos do repository usando métodos default.

No final da aula, é mostrado que posso criar nome alternativos para os métodos usando a anotação @Query:

public interface TopicoRepository extends JpaRepository<Topico, Long> {

    List<Topico> findByCursoNome(String nomeCurso);

    @Query("SELECT t FROM Topico t WHERE t.curso.nome = :nomeCurso")
    List<Topico> carregarPorNomeDoCurso(String nomeCurso);

}

Mas uma coisa que eu experimentei e deu certo foi usar os métodos default das interfaces que passaram a existir a partir do Java 8:

public interface TopicoRepository extends JpaRepository<Topico, Long> {

    List<Topico> findByCursoNome(String nomeCurso);

    default List<Topico> carregarPorNomeDoCurso(String nomeCurso) {
        return this.findByCursoNome(nomeCurso);
    }

}

Isso seria uma outra alternativa.

Garanta sua matrícula hoje e ganhe + 2 meses grátis

Continue sua jornada tech com ainda mais tempo para aprender e evoluir

Quero aproveitar agora
1 resposta

Oi Rafael,

Realmente essa é uma alternativa interessante.

Valeu por compartilhar!

Bons estudos!