Este es el proyecto final del bootcamp de Java de la IT-Academy de Barcelona activa.
El juego de dados se juega con dos dados. En caso de que el resultado de la suma de ambos dados sea 7, la partida es ganada, sino es perdida. Un jugador puede ver un listado
de todas las tiradas que ha realizado y el porcentaje de éxito.
Para poder jugar al juego y realizar un tirón, un usuario debe registrarse con un nombre no repetido. Al crearse, se le asigna un identificador numérico único y una fecha de registro. Si el usuario así lo desea, puedes no añadir ningún nombre y se llamará “ANÓNIMO”. Puede haber más de un jugador "ANÓNIMO".
Cada jugador puede ver un listado de todas las tiradas que ha realizado, con el valor de cada dado y si se ha ganado o no la partida. Además, puede saber su porcentaje de éxito por todas las tiradas que ha realizado.
No se puede eliminar una partida en concreto, pero sí que se puede eliminar todo el listado de tiradas por un jugador.
El software debe permitir listar a todos los jugadores que hay en el sistema, el porcentaje de éxito de cada jugador y el porcentaje de éxito medio de todos los jugadores en el sistema.
El software debe respetar los principales patrones de diseño.
Los objetivos son:
✅ Task 1 → POST: /players : Crea un jugador
✅ Task 2 → PUT /players : Modifica el nombre del jugador
✅ Task 3 → POST /players/{id}/games/ : Un jugador específico realiza una tirada con los dados.
✅ Task 4 → DELETE /players/{id}/games: Elimina todas las tiradas del jugador.
✅ Task 5 → GET /players/: Devuelve el listado de todos los jugadores del sistema con su porcentaje medio de éxito.
✅ Task 6 → GET /players/{id}/games: Devuelve el listado de jugadas de un jugador.
✅ Task 7 → GET /players/ranking: Devuelve el ranking medio de todos los jugadores del sistema . Es decir, el porcentaje medio de exito.
✅ Task 8 → GET /players/ranking/loser: devuelve al jugador con peor porcentaje de éxito
✅ Task 9 → GET /players/ranking/winner: devuelve al jugador con mejor porcentaje de éxito
Esto hay que realizarlo guardando los datos en MySQL, en mongoDB y guardando jugadores y tiradas en MySQL y mongoDB respectivamente.
Cada uno de los proyectos tiene diferentes requisitos técnicos segun requerimientos con JWT y test tanto unitarios como de integracion.
-
Tener JavaSE-16 En el caso de no tenerlo instalado podemos instalarlo pulsando el siguiente link: JavaSE-16
-
Tener instalado el driver de JDBC. En el caso de no tenerlo instalado podemos instalarlo pulsando el siguiente link: JDBC
-
Tener instalado MySql En el caso de no tenerlo instalado podemos instalarlo pulsando el siguiente link: MySql. Y como en cualquier otra instalación siguiente>siguiente… Seleccionamos la configuración por defecto y escribimos un user y una contraseña (opcional).
-Tener instalado mongoDB En el caso de no tenerlo instalado podemos instalarlo pulsando el siguiente link: mongoDB y siguiendolas instrucciones.
-Tener instalado Eclipse En el caso de no tenerlo instalado podemos instalarlo pulsando el siguiente link:Eclipse y seguir las instrucciones de la página.
Poner en marcha la base de datos MySql .
usuario = "root";
contraseña = "";
O mongoDB segun corresponda:
Si se quiere usar postman en cada proyecto hay un json para poder importar con las diferentes llamadas.
Poner en marcha el proyecto en eclipse en los proyectos con MySql hay un import que rellenara automaicamente parte de la base de datos.
Se han añadido archivos json con las llamadas al api y ejemplos implementados para facilitar las llamadas
Se han realizado test unitarios y de integracion en el api con MySql