Ya estoy inscrito ¿Todavía no tienes acceso? Nuestros Planes
Ya estoy inscrito ¿Todavía no tienes acceso? Nuestros Planes
Solucionado (ver solución)
Solucionado
(ver solución)
1
respuesta

Tengo un problema con mi codigo.

Mi problema es que basicamente al hacer el llamado a la base de datos me trae la serie en vez del episodio y no se porque realmente. Dejo mi codigo a continuacion

Esto en el SerieRepository.

 @Query("SELECT e FROM Serie s JOIN s.episodios e WHERE e.titulo ILIKE %:nombreEpisodio%")
    List<Episodio> episodiosPorNombre(String nombreEpisodio);
    

y esto en mi principal

private void buscarEpisodiosPorTitulo() {

        System.out.println("Escribe el nombre del episodio que deseas buscar");
        var nombreEpisodio = teclado.nextLine();

        List<Episodio> episodiosEncontrados = repositorio.episodiosPorNombre(nombreEpisodio);

        episodiosEncontrados.forEach(e-> System.out.printf("Serie: %s , temporada: %s, Episodio: %s, Evaluación: %s\n",
                e.getSerie(), e.getTemporada(), e.getNumeroEpisodio(),e.getEvaluacion()));
    }
    

eso me da como resultado la serie completa, mas no el episodio


Ingrese aquí la descripción de esta imagen para ayudar con la accesibilidad

1 respuesta
solución!

Aqui te hace falta un . getTitulo unicamente. Tu version.

private void buscarEpisodiosPorTitulo() {

        System.out.println("Escribe el nombre del episodio que deseas buscar");
        var nombreEpisodio = teclado.nextLine();

        List<Episodio> episodiosEncontrados = repositorio.episodiosPorNombre(nombreEpisodio);

        episodiosEncontrados.forEach(e-> System.out.printf("Serie: %s , temporada: %s, Episodio: %s, Evaluación: %s\n",
                e.getSerie(), e.getTemporada(), e.getNumeroEpisodio(),e.getEvaluacion()));
    }
    

Corregida.

private void buscarEpisodiosPorTitulo() {

        System.out.println("Escribe el nombre del episodio que deseas buscar");
        var nombreEpisodio = teclado.nextLine();

        List<Episodio> episodiosEncontrados = repositorio.episodiosPorNombre(nombreEpisodio);

        episodiosEncontrados.forEach(e-> System.out.printf("Serie: %s , temporada: %s, Episodio: %s, Evaluación: %s\n",
                e.getSerie().getTitulo(), e.getTemporada(), e.getNumeroEpisodio(),e.getEvaluacion()));
    }