Bom dia pessoal, nas aulas anteriores as professoras definiram também outros métodos na SerieRepository. Segue o código abaixo:
public interface SerieRepository extends JpaRepository<Serie, Long> {
Optional<Serie> findByTituloContainingIgnoreCase(String titulo);
List<Serie> findByAtoresContainingIgnoreCaseAndAvaliacaoGreaterThanEqual(String nomeAtor, Double avaliacao);
List<Serie> findTop5ByOrderByAvaliacaoDesc();
List<Serie> findByGenero(Categoria genero);
// List<Serie> findByTotalTemporadasLessThanEqualAndAvaliacaoGreaterThanEqual(Integer quantidade, Double avaliacao);
@Query("SELECT s FROM Serie s WHERE s.totalTemporadas <= :quantidade AND s.avaliacao >= :avaliacao")
List<Serie> seriesPorTemporadaEAvaliacao(Integer quantidade, Double avaliacao);
@Query("SELECT e FROM Serie s JOIN s.episodios e WHERE e.titulo ILIKE %:trechoEpisodio%")
List<Episodio> episodiosPorTrecho(String trechoEpisodio);
@Query("SELECT e FROM Serie s JOIN s.episodios e WHERE s.titulo = :titulo ORDER BY e.avaliacao DESC LIMIT 5")
List<Episodio> top5EpisodiosPorSerie(String titulo);
}
Fiquei com dúvida pois nessa aula do top 5 episódios por série, ao invés de passar apenas a String com o título, o parâmetro que foi passado na aula foi o Serie.
Aparentemente o jeito que eu fiz com a String, também funcionou normalmente, mas queria saber qual seria a maneira mais apropriada.