https://github.com/rodriiandino/foro_api_springboot
API RESTful - Realizada con Spring Boot
https://github.com/rodriiandino/foro_api_springboot
api-rest java jpa-hibernate spring-boot
Last synced: 3 months ago
JSON representation
API RESTful - Realizada con Spring Boot
- Host: GitHub
- URL: https://github.com/rodriiandino/foro_api_springboot
- Owner: Rodriiandino
- Created: 2023-10-12T00:51:11.000Z (over 1 year ago)
- Default Branch: main
- Last Pushed: 2023-11-07T18:20:55.000Z (over 1 year ago)
- Last Synced: 2025-02-01T14:33:19.892Z (4 months ago)
- Topics: api-rest, java, jpa-hibernate, spring-boot
- Language: Java
- Homepage:
- Size: 69.3 KB
- Stars: 1
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# Foro_API_SpringBoot 🍀
API RESTful - Realizada con Spring BootEn el desarrollo de esta api, se trato de usar las mejores practicas, y se enfocó en seguir los principios de arquitectura REST.
Se aplicaron patrones de diseño como el patrón **MVC (Modelo-Vista-Controlador)** para separar la lógica de negocio, la presentación y el control de la aplicación.
## ✨ Que se aprendio con este proyecto:
- **Desarrollo en Spring Framework**
- **Spring Boot**
- **Spring Security**
- **Seguridad:** Autenticación basada en tokens (JWT) y autorización, para proteger tu API.
- **Persistencia de Datos con JPA**
- **Documentación de API**
- **Gestión de Usuarios y Roles**
- **Gestión de Solicitudes y Respuestas HTTP**
- **Mensajes de Error y Excepciones, y Validación de Datos de una api**
## ✨ Tecnologías Utilizadas:
- Java y el Framework Spring para la lógica de negocio y la API REST.
- Spring Security para la autenticación y autorización.
- Spring Data JPA para la persistencia de datos.
- SpringDoc para la generación de documentación de la API.
- Base de datos relacional (MySQL) para el almacenamiento de datos.
- Control de Versiones con Flyway

## ✨ Uso Básico
**Para comenzar a utilizar esta API, sigue estos pasos:**
1. **Clonar el Repositorio**: Clona este repositorio en tu entorno local utilizando el comando `git clone`.
2. **Configuración de la Base de Datos**: Asegúrate de que la configuración de la base de datos se ajuste a tus necesidades. Por defecto, se utiliza MySQL. Debes configurar las propiedades de conexión en el archivo `application.properties`.
3. **Compilación y Ejecución**: Utiliza Maven o tu IDE favorito para compilar y ejecutar la aplicación. La API estará disponible en `http://localhost:8080` de forma predeterminada.
4. **Documentación de la API**: Accede a la documentación de la API en `/swagger-ui.html` para obtener detalles sobre los puntos de conexión disponibles y cómo utilizarlos.
6. **Registrar usuario**: Utiliza las rutas `/api/users/create` para registrar a un usuario.7. **Autenticación**: Utiliza las rutas `/api/login` para obtener un token JWT y autorizar tus solicitudes. Asegúrate de incluir el token en la cabecera `Authorization` de tus solicitudes posteriores.
8. **Gestión de Recursos**: Comienza a crear categorías, temas y publicaciones utilizando las rutas adecuadas. Asegúrate de tener los permisos necesarios para las operaciones de administración.