This project involves the development of an API to manage users and activities in a web application.
- Spring Boot - Java framework.
- MySQL - database for persistent storage.
- Gradle - build tool and dependency management.
- Prerequisites: have JDK 21, MySQL and Gradle installed.
- Clone Github repo.
- MySQL Setup:
- Edit the
application.propertiesfile to update theuserandpasswordfields according to your MySQL installation. - Create a new database using:
CREATE DATABASE hackathon;
- Edit the
- Open a terminal in the project directory and run the project:
- For Linux/macOS:
./gradlew bootRun - For Windows:
gradlew.bat bootRun
- For Linux/macOS:
- Register a new user:
POST /appActivitats/user - Update user infomation:
PUT /appActivitats/users/:id - Get user information:
GET /appActivitats/users/:id - Delete a user:
DELETE /appActivitats/users/:id
- Create a new activity:
POST /appActivitats/activity - Get activity information:
GET /appActivitats/activities/:id - Enroll a user in an activity:
POST /appActivitats/activities/:id/users/:user_id
- Export all activities to JSON format:
GET /appActivitats/activities - Import activities from a JSON file:
POST /appActivitats/activities
{
"firstName": "María",
"lastName": "Pérez",
"age": 28,
"email": "[email protected]"
}
{
"name": "Dibuixa Manga",
"scheduledDateTime": "2024-10-09T18:00:00",
"capacity": 15,
"description": "Aprèn a dibuixar els teus personatges favorits."
}