Skip to content

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

2 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

🏢 Rent-it Pro

Ecosistema backend de alto rendimiento para gestión de alquileres

Java Spring Boot PostgreSQL Docker

📋 Descripción

Rent-it Pro es un ecosistema backend de alto rendimiento desarrollado con Java 21 y Spring Boot 3, diseñado bajo una arquitectura de capas que implementa un modelo de seguridad Stateless mediante JWT y MFA con autorización granular (RBAC) para la delegación de permisos a perfiles administrativos y empresariales.

El sistema garantiza la integridad de los datos y la trazabilidad mediante un motor de persistencia en PostgreSQL con auditoría automática, gestión de borrado lógico (Soft Delete) y el uso de @Transactional para asegurar la atomicidad en flujos financieros complejos que integran la API de Stripe para pagos simulados.

La plataforma está optimizada para la alta concurrencia mediante caché distribuida con Redis, paginación de datos y un manejo global de excepciones, operando bajo un entorno contenedorizado con Docker y versionado de base de datos con Flyway para asegurar despliegues robustos y escalables.

🛠️ Stack Tecnológico

Categoría Tecnología
Lenguaje Java 21
Framework Spring Boot 3.5
Base de Datos PostgreSQL 16
Caché Redis
Migraciones Flyway
Contenedores Docker & Docker Compose
Pagos Stripe API
Seguridad Spring Security + JWT + MFA

✨ Características Principales

  • 🔐 Seguridad Stateless - Autenticación JWT con soporte MFA
  • 👥 RBAC - Control de acceso basado en roles granular
  • 📊 Auditoría Automática - Trazabilidad completa de operaciones
  • 🗑️ Soft Delete - Borrado lógico para preservar integridad
  • 💳 Integración Stripe - Procesamiento de pagos simulados
  • Alta Concurrencia - Caché distribuida con Redis
  • 📄 Paginación - Manejo eficiente de grandes volúmenes de datos
  • 🚨 Manejo Global de Excepciones - Respuestas de error consistentes
  • 🐳 Contenedorizado - Despliegue con Docker
  • 🔄 Migraciones Flyway - Versionado de esquema de BD

📁 Estructura del Proyecto

src/
├── main/
│   ├── java/com/orlando/java1/
│   │   ├── persistence/
│   │   │   ├── entities/
│   │   │   └── repositories/
│   │   └── presentation/
│   │       └── controllers/
│   └── resources/
│       ├── db/migration/
│       ├── application.properties
│       └── application.yml
└── test/
    └── java/

🚀 Inicio Rápido

Prerrequisitos

  • Java 21+
  • Docker & Docker Compose
  • Maven 3.8+

Instalación

  1. Clonar el repositorio

    git clone https://github.com/0RLAND0-AV/Rent-it_Pro.git
    cd JAVA1
  2. Iniciar los contenedores

    docker-compose up -d
  3. Ejecutar la aplicación

    ./mvnw spring-boot:run

La API estará disponible en http://localhost:8080

📝 Variables de Entorno

Variable Descripción Valor por Defecto
POSTGRES_DB Nombre de la base de datos JAVA1_database
POSTGRES_USER Usuario de PostgreSQL orlando
POSTGRES_PASSWORD Contraseña de PostgreSQL admin123

🧪 Testing

./mvnw test

📄 Licencia

Este proyecto está bajo desarrollo.


Rent-it Pro - Desarrollado con ❤️ por Orlando

About

Backend con Framework SprinBoot, Java21

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages