- Descripción del proyecto
- Estado del proyecto
- Tecnologías usadas
- Instalación y configuración
- Autor
- Evidencias
Este proyecto consiste en un foro de consultas, se pueden generar consultas a partir de un curso existente a traves de un usuario.
- Registrar usuarios con todos sus atributos.
- Iniciar sesión con usuario creado para generar un token.
- CRUD usuario:
- Listar usuarios.
- Actualizar usuario.
- Buscar usuario.
- Eliminar usuario.
- CRUD curso:
- Registrar curso.
- Listar cursos.
- Actualizar curso,
- Buscar curso.
- Eliminar curso.
- CRUD consulta:
- Registrar consultas.
- Listar consultas.
- Actualizar consulta.
- Buscar consulta.
- Eliminar consulta.
Actualmente, el proyecto se encuentra concluido, pero podría haber algún tipo de modificación en el futuro.
- Lenguaje: Java 17 en adelante.
- Spring Boot version 3 en adelante.
- Gestor de dependencias: Maven version 4 en adelante.
- Base de datos: MySQL version 8 en adelante.
- Entorno de desarrollo: IDE Intellij IDEA.
- Dependencias:
- Lombok
- Spring Web
- Jackson
- Spring Boot Dev Tools
- String Data JPA
- Flyway Migration
- MySQL Driver
- Validation
- Spring Security
- JDK 17 instalado.
- IntellijIDEA instalado (Recomendado)
- MySQL instalado
- Insomnia instalado (opcional)
- Crear una base de datos.
- Actualizar las credenciales en el archivo
application.properties
oapplication.yml
: properties spring.datasource.url=jdbc:/localhost:####/nombre_base_datos spring.datasource.username=tu_usuario spring.datasource.password=tu_contraseña - Conectar base de datos con IntellijIDEA
Paula Vargas
Registrar usuario
Login usuario
Listar usuarios
Actualizar usuario
Buscar usuario
Eliminar usuario
Registrar curso
Listar cursos
Actualizar curso
Buscar curso
Eliminar curso
Registrar consulta
Listar consultas
Actualizar consulta
Buscar consulta
Eliminar consulta
Actualizar usuario y curso implementados en una consulta
Registrar usuario
[Variables registradas no pueden ser nulas]
[Deben brindarse los campos de forma válida]
[No pueden registrarse 2 veces el mismo nombre ni correo para distintos usuarios]
[No puede registrarse 2 veces el mismo nombre para distintos usuarios]
[No puede registrarse 2 veces el mismo para distintos usuarios]
Actualizar usuario
[El id es inexistente]
[Las variables registradas no pueden estar vacías]
[La variable para actualizar no puede estar vacía]
[La variable para actualizar no puede estar vacía]
[No se puede actualizar si el nombre del usuario ingresado, fue registrado con anterioridad]
[No se puede actualizar si el nombre y el email del usuario ingresado, fueron registrados con anterioridad]
[No se puede actualizar si el email del usuario ingresado, fue registrado con anterioridad]
Eliminar usuario
[Id inexistente]
Registrar curso
[Variable nombre no puede estar vacía]
[Deben ingresarse los espacios de fórma válida]
[Variable categoría no puede estar vacía]
[Ingresar la variable categoria en el formato Enum]
Actualizar curso
[Id inexistente]
[Variable nombre no puede estar vacía]
Eliminar curso
[Id inexistente]
Registrar consulta
[No puede registrarse el mismo nombre y mensaje para distintas consultas]
[Puede registrarse una consulta aunque los titulos sean iguales, mientras el mensaje sea distinto]
[No puede registrarse el mismo mensaje para distintas consultas]
[Las variables registradas no deben estar vacías]
[No puede realizarse una consulta con un usuario desabilitado]
[No puede realizarse una consulta con un curso desabilitado]
[Id usuario inexistente]
[Id curso inexistente]
Actualizar consulta
[Las variables titulo y mensaje no pueden estar vacías]
[La variable titulo no puede estar vacía]
[La variable mensaje no puede estar vacía]
[No se puede actualizar el mismo titulo ni el mismo mensaje para distintas consultas]
[No se puede actualizar el mismo mensaje para distintas consultas]
[Id usuario inexistente]
[No se puede actualizar una consulta con un curso desabilitado]
[Se puede actualizar una consulta con el mismo titulo mientras el mensaje sea distinto a otra consulta existente ]
Eliminar consulta
[Id curso inexistente]