Skip to content

juanpiRiv/FacturadorFINAL

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

14 Commits
 
 
 
 

Repository files navigation

📊 Facturador API

Un proyecto de facturación desarrollado en Java que ofrece una API REST para gestionar y consultar facturas. Este proyecto utiliza una base de datos en memoria H2 y puede ejecutarse en un contenedor Docker. Además, cuenta con documentación de API generada con Swagger y se proporcionan pruebas con Postman.

Características

  • CRUD completo para gestión de facturas.
  • API REST documentada con Swagger.
  • Base de datos en memoria H2 para un entorno liviano.
  • Compatible con Docker para una fácil implementación.
  • Colección de pruebas en Postman incluida.

Tecnologías Utilizadas

  • Java - Versión 17 o superior.
  • Spring Boot - Framework principal para el desarrollo de la API.
  • H2 Database - Base de datos en memoria para desarrollo y pruebas.
  • Swagger - Generación de documentación de la API.
  • MySQL (opcional) - Base de datos persistente en Docker.
  • Docker - Para la creación de contenedores de la aplicación.
  • Postman - Para pruebas de endpoints de la API.

Requisitos previos

  • Docker (para la ejecución en contenedor)
  • Postman (opcional, para pruebas)

Configuración Local

  1. Clona el repositorio
    git clone [https://github.com/juanpiRiv/FacturadorFINAL.git]
    cd FacturadorFINAL
    

Configuración con Docker y MySQL

-Ejemplo de ayuda proyecto inizializado en Docker: https://github.com/juanpiRiv/JavaProyect -Si deseas utilizar Docker para ejecutar la aplicación con MySQL como base de datos, sigue estos pasos adicionales. #1.Crear el archivo docker-compose.yml

Crea un archivo docker-compose.yml en la raíz del proyecto con el siguiente contenido:

services: db: image: mysql:latest restart: always environment: - MYSQL_USER=jp - MYSQL_PASSWORD=root - MYSQL_ROOT_PASSWORD=root ports: - "3306:3306" volumes: - ./mysql_data:/var/lib/mysql

###Actualizar application.properties para MySQL:

Configuración DB en Docker

spring.datasource.url=jdbc:mysql://localhost:3306/fact?createDatabaseIfNotExist=true&allowPublicKeyRetrieval=true&useSSL=false spring.datasource.username=root spring.datasource.password=root spring.datasource.driver-class-name=com.mysql.cj.jdbc.Driver

Configuración de Hibernate

spring.jpa.hibernate.ddl-auto=update spring.jpa.show-sql=true spring.jpa.properties.hibernate.dialect=org.hibernate.dialect.MySQLDialect spring.jpa.properties.hibernate.format_sql=true spring.jpa.properties.hibernate.current_session_context_class=org.springframework.orm.hibernate5.SpringSessionContext

Configuración de Swagger

springdoc.swagger-ui.path=/swagger-ui.html

http://localhost:5000/swagger-ui/index.html#/

Configuración del Puerto

server.port=5000

#Iniciar el contenedor Docker

Ejecuta el siguiente comando para iniciar MySQL en Docker:

docker-compose up -d

💫 About Me:

🔭 I’m currently working on java
💬 Ask me about
⚡ Fun fact

🌐 Socials:

LinkedIn

💻 Tech Stack:

Swagger Java MySQL Spring

📊 GitHub Stats:




About

Proyecto generado para coderhouse en JAVA

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages