Visualización de Gatos Favoritos en Java
Clase 21 de 25 • Curso de Java SE Persistencia de Datos
Resumen
¿Cómo visualizar los gatos favoritos en nuestra aplicación?
Una característica esencial para cualquier amante de los gatos es poder guardar y posteriormente visualizarlos en su lista de favoritos. Vamos a implementar la lógica necesaria para que nuestra aplicación pueda solicitar a la API de Cat API los gatos que hemos marcado como favoritos. ¡Vamos allá!
¿Cómo modificamos el menú para ver nuestros favoritos?
Para comenzar, debemos modificar el menú en nuestro código para incluir la opción de ver los gatitos favoritos. Lo haremos agregando una opción más en nuestra lista de acciones disponibles:
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
int opcion;
do {
System.out.println("Seleccione una opción:");
System.out.println("1. Ver gatos aleatorios");
System.out.println("2. Ver favoritos");
System.out.println("3. Salir");
opcion = scanner.nextInt();
switch (opcion) {
case 1:
// Código para ver gatos aleatorios
break;
case 2:
verFavoritos();
break;
case 3:
System.out.println("Hasta luego!");
break;
default:
System.out.println("Opción no válida.");
}
} while(opcion != 3);
}
¿Cómo solicitamos los favoritos a la API?
Para interactuar con la API, crearemos un método llamado verFavoritos
en nuestra clase DatosService
. Este método tomará como parámetro la API Key necesaria para autenticar nuestras solicitudes. A continuación, describimos cómo llevaremos a cabo esta tarea:
1. Creación del método verFavoritos
:
public void verFavoritos(String apiKey) {
// Lógica para solicitar los gatos favoritos
}
2. Implementación de la llamada a la API:
- Vamos a usar un cliente HTTP para hacer la solicitud.
- Necesitaremos una clase JSON parser para interpretar la respuesta de la API.
¿Cómo configuramos las nuevas clases para manejar la información?
Como las respuestas JSON pueden ser complejas, necesitamos desglosar estos datos en clases internas que nos permitan manejar y utilizar la información con más facilidad.
Crear la clase GatosFavorito
:
Esta clase nos servirá para interpretar los datos de los gatos favoritos.
public class GatosFavorito {
private String id;
private String apiKey;
private ImagenDeGatos imagen; // clase que encapsula los detalles de la imagen
// Getters y Setters
public static class ImagenDeGatos {
private String id;
private String url;
// Getters y Setters
}
}
¿Cómo seleccionamos una imagen favorita al azar?
Una vez obtenida la lista de favoritos, queremos mostrar una imagen seleccionada al azar al usuario. Aquí detallamos cómo lograrlo:
- Verificamos que nuestra lista de favoritos no esté vacía.
- Generamos un número aleatorio entre 0 y el tamaño de la lista menos uno.
- Mostramos la imagen correspondiente a ese índice.
if (gatosFavoritos.length > 0) {
int randomIndex = (int) (Math.random() * gatosFavoritos.length);
GatosFavorito gatoSeleccionado = gatosFavoritos[randomIndex];
System.out.println("Gato favorito: " + gatoSeleccionado.getImagen().getUrl());
} else {
System.out.println("No hay gatos favoritos guardados.");
}
Con estos pasos, hemos creado un acceso funcional para que los usuarios puedan ver los gatitos que han marcado como sus favoritos. Continuamos mejorando y explorando nuestra aplicación, enfocándonos en la experiencia de usuario y en crear un sistema eficiente y amigable. ¡Sigue aprendiendo y mejorando!