ForoHub es una plataforma de foros en línea diseñada para facilitar la discusión y el intercambio de conocimientos entre usuarios. El proyecto está implementado utilizando Spring Boot, Spring Security y una base de datos PostgreSQL. A continuación, se describen los principales componentes y funcionalidades del proyecto:
Backend: Spring Boot
Base de Datos: PostgreSQL.
Autenticación: JWT (JSON Web Tokens)
ORM: Hibernate (JPA)
Controladores REST: Implementados para gestionar usuarios, tópicos, perfiles y cursos.
GET /usuarios POST /usuariosCuerpo de la solicitud:
| Propiedad | Tipo | Descripción |
|---|---|---|
nombre |
String |
Requerido. Nombre del usuario |
email |
String |
Requerido. Correo electrónico |
password |
String |
Requerido. Contraseña |
perfiles |
List<Long> |
Requerido. Lista de Ids de los perfiles |
GET /cursos POST /cursosCuerpo de la solicitud:
| Propiedad | Tipo | Descripción |
|---|---|---|
nombre |
String |
Requerido. Nombre del curso |
categoria |
String |
Requerido. Clasificación del curso |
GET /perfiles POST /perfilesCuerpo de la solicitud:
| Propiedad | Tipo | Descripción |
|---|---|---|
nombre |
String |
Requerido. Nombre del perfil |
GET /topicos GET /topicos/{id} POST /topicosCuerpo de la solicitud:
| Propiedad | Tipo | Descripción |
|---|---|---|
titulo |
String |
Requerido. Nombre del topico |
mensaje |
String |
Requerido. Clasificación del curso |
idAutor |
Long |
Requerido. id del usuario que genera el topico |
nombreCurso |
String |
Requerido. Nombre del curso al cual se destina el topico |
PUT /topicos/{id}Cuerpo de la solicitud:
| Propiedad | Tipo | Descripción |
|---|---|---|
id |
Long |
Requerido. Id del topico a actualizar |
titulo |
String |
Requerido. Nombre del topico |
mensaje |
String |
Requerido. Clasificación del curso |
idAutor |
Long |
Requerido. id del usuario que genera el topico |
nombreCurso |
String |
Requerido. Nombre del curso al cual se destina el topico |
DELETE /topicos/{id}