Este proyecto es una API RESTful creada con Spring Boot que interactúa con una base de datos MySQL. La API permite realizar operaciones CRUD sobre una entidad llamada Person, que tiene los campos id, name, username y date_registry. La aplicación es compatible con el control de concurrencia optimista utilizando el campo @Version.
- Spring Boot: Framework para desarrollo de aplicaciones backend.
- Spring Data JPA: Para manejar la interacción con la base de datos utilizando JPA.
- MySQL: Sistema de gestión de bases de datos.
- Postman: Para realizar pruebas de la API.
Para ejecutar este proyecto, asegúrate de tener los siguientes elementos
git clone https://github.com/Amerikg/APIREST-con-Spring-Boot.git-
Crear la base de datos:
Si aún no tienes una base de datos, puedes crearla manualmente en MySQL con el siguiente comando:
CREATE DATABASE nombre_de_la_base_de_datos;
-
Configurar las credenciales de la base de datos en el archivo
application.properties(en la carpetasrc/main/resources):spring.datasource.url=jdbc:mysql://localhost:3306/nombre_de_la_base_de_datos spring.datasource.username=tu_usuario spring.datasource.password=tu_contraseña spring.datasource.driver-class-name=com.mysql.cj.jdbc.Driver spring.jpa.hibernate.ddl-auto=update spring.jpa.properties.hibernate.dialect=org.hibernate.dialect.MySQL8Dialect
-
Compila y ejecuta la aplicación:
Si usas Maven:
mvn clean spring-boot:run
Si usas Gradle:
gradle bootRun
-
Accede a la API:
La API debería estar disponible en
http://localhost:8080/por defecto.
URL: /api/persons
Método: GET
Devuelve una lista de todas las personas almacenadas en la base de datos.
URL: /api/persons/{id}
Método: GET
Devuelve una persona específica por su id.
URL: /api/persons
Método: POST
Crea una nueva persona. En el cuerpo de la solicitud, debes enviar los datos en formato JSON.
Ejemplo de JSON:
{
"name": "Juan Pérez",
"userName": "jperez",
"date": "2025-04-03"
}URL: /api/persons/{id}
Método: PUT
Actualiza los detalles de una persona existente.
Ejemplo de JSON:
{
"name": "Juan Pérez",
"userName": "juanperez",
"date": "2025-04-03"
}URL: /api/persons/{id}
Método: DELETE
Elimina una persona específica por su id.
Para realizar pruebas de la API, puedes usar Postman o cualquier herramienta similar para realizar solicitudes HTTP. Asegúrate de que el servidor de la API esté en funcionamiento antes de hacer las pruebas.