Skip to content

Latest commit

 

History

History
149 lines (95 loc) · 5.09 KB

README.md

File metadata and controls

149 lines (95 loc) · 5.09 KB

FORO ALURA


Tópicos


Descripción del proyecto

Este proyecto como challenge durante el desarrollo del curso de formación Java del programa Oracle Next Education ONE, en particular la rama de Back End.

Crearemos una API REST usando Spring boot, nuestra API estará compuesta por tópicos sobre un curso específico, estos tópicos, así como las respuestas a estos solo podrán ser creados por usuarios registrados.

Nuestra API va a centrarse específicamente en los tópicos, y debe permitir a los usuarios:

  • Crear un nuevo registro

  • Mostrar todos registros

  • Mostrar un registro específico

  • Actualizar un registro

  • Eliminar un registro


Se realizó en dos Sprints:
  • Sprint 01: Se implementó el CRUD del Foro

    • Se creó el modelo y las funcionalidades escenciales de la API

    • API con rutas implementadas siguiendo las mejores prácticas del modelo REST

    • Validaciones realizadas según reglas de negocio

    • Implementación de una base de datos para la persistencia de la información

  • Sprint 02: En este sprint, se implementó un mecanismo de autenticación en la API, para que solo los usuarios autenticados puedan interactuar con ella.

    • Efectuar cambios en la base de datos para almacenar datos de autenticación de los usuarios

    • Insertar maneras de autenticación con Spring Security

    • Uso del token JWT

    • Documentación con Swagger

Funcionalidad

Foro-Alura consta de cuatro entidades (Usuario, Curso, Topico, Respuesta) en las cuales podemos realizar acciones CRUD, para esto contaremos con endpoints específicos que se encargaran de registrar las informaciones requeridas o simplemente ejecutar la acción necesaria, para una mejor comprensión se hace uso de Swagger para documentar la API.

Empezando

  • Dar inicio al servidor de Spring boot.
  • Ingresar en http://localhost:8085/doc/swagger-ui/index.html#/
  • Abrir autenticacion-controller y generar el token para autenticarse ingresando usuario y contraseña como se muestra a continuación.
    • El CRUD de usuarios está en desarollo, de manera que el unico usuario disponible es nombre: pablo contraseña: pablo_contrasena
{
   "nombre": "pablo",
   "contrasena": "pablo_contrasena"
}
Token generado
  • Buscar el botón authorize en la esquina superior derecha de la página e ingresar el token generado en autenticacion-controller.
Authorization button
Authorization panel
  • Una vez autenticado podras usar cualquiera de los endpoints generados.

Software de desarrollo

JDK 17.0.6 NetBeans IDE 14 NB SpringBoot
MySQL 8.0.32 Swagger Insomnia

Codigo fuente

Foro-Alura esta desarrollado en java implementando Spring Boot.

Abrir localmente

Para correr Foro-Alura en tu máquina local:

En Progreso

  • CRUD Usuarios
  • CRUD Respuestas

Desarrollador

Made by Pablo Boer


Agradecimientos

🧡 Oracle

💙 Alura Latam