Base est une application Spring Boot qui sert de point de départ pour développer des applications plus complexes. Ce projet utilise diverses dépendances pour gérer les opérations CRUD, la sécurité, la persistance des données et la migration des bases de données.
Avant de commencer, assurez-vous que vous avez les éléments suivants installés sur votre machine :
- Java 21 ou version supérieure
- Maven (pour la gestion des dépendances et le build)
- MySQL ou MariaDB (si vous utilisez une base de données différente d'H2)
Clonez le dépôt et accédez au répertoire du projet :
git clone <[URL-DU-REPOSITORY](https://github.com/NARIHY/Base-spring-boot)>
cd base
Installez les dépendances du projet en utilisant Maven :
mvn clean install
Configurez votre fichier application.properties
ou application.yml
situé dans le répertoire src/main/resources
. Vous pouvez spécifier les paramètres de connexion à la base de données, le port du serveur, etc. Voici un exemple de configuration pour application.properties
:
spring.datasource.url=jdbc:mariadb://localhost:3306/base
spring.datasource.username=root
spring.datasource.password=password
spring.jpa.hibernate.ddl-auto=update
spring.flyway.enabled=true
Pour démarrer l'application, utilisez Maven :
mvn spring-boot:run
L'application sera accessible à l'adresse http://localhost:8080
.
Pour exécuter les tests, utilisez la commande Maven suivante :
mvn test
Les tests incluent des tests unitaires et d'intégration pour vérifier que les fonctionnalités de l'application fonctionnent comme prévu.
Voici un résumé des dépendances utilisées dans ce projet :
- Spring Boot Starter Data JPA : Fournit le support pour JPA et Hibernate.
- Spring Boot Starter Security : Intègre la sécurité avec Spring Security.
- Spring Boot Starter Web : Permet le développement d'applications web et RESTful.
- Flyway Core et Flyway MySQL : Pour la gestion des migrations de base de données.
- H2 Database : Base de données en mémoire utilisée pour les tests et le développement.
- MariaDB Java Client : Pilote JDBC pour MariaDB.
- Lombok : Réduit le code boilerplate en générant automatiquement des getters, setters, et autres méthodes.
- Spring Boot Starter Test : Inclut des outils pour les tests unitaires et d'intégration.
- Spring Security Test : Fournit des outils pour tester des fonctionnalités de sécurité.