Ce repository contient le code source du TP sur le développement d'API en JAVA/Spring.
Vous devez avoir sur votre poste :
- JAVA en version 17
- DOCKER (et docker-compose)
Pour démarrer l'application, jouer la commande suivante :
- sur linux / macos :
./gradlew bootRun
- sur windows :
./gradlew.bat bootRun
L'application démarre sur le port par défaut de Spring-Boot, 8080.
Pour démarrer la BDD, il faut démarrer un container avec la commande :
docker-compose up -d
La BDD démarre sur le port 15432.
Les informations de la BDD comme le login, le password, le port, la bddname sont disponibles dans le
fichier docker-compose.yml
Ouvrir la page http://localhost:8080/swagger-ui/index.html
Pour lancer tous les tests :
- sur linux / macos
./gradlew test
- sur windows
./gradlew.bat test
- Doc pour le tp 2 : https://developer.themoviedb.org/reference/movie-popular-list
- Doc pour le tp 3 : https://developer.themoviedb.org/reference/search-movie
- Doc pour le tp 5 : https://developer.themoviedb.org/reference/movie-recommendations
- Doc pour le tp 7 : https://developer.themoviedb.org/reference/movie-details
- Obtenir un compte pour utiliser l'API TMDB : Page d'inscription
- Après l'inscription, votre Jeton d'accès en lecture à l'API va être généré : https://www.themoviedb.org/settings/api
- Créer un fichier
src/main/resources/.env
, avec le même contenu que le fichier.env.exemple
- Remplacer
<METTRE ICI LE JETON TMDB>
par votre Jeton d'accès à l'API TMDB
TP Sécuriser son API Java avec Spring Security
Authentification | username | Password | UserId | Roles |
---|---|---|---|---|
Basic Auth | user | password | user | USER |
Basic Auth | jdurant | password | jdurant | USER |
Basic Auth | admin | password | admin | ADMIN, USER |
OAuth 2.0 | jeandurant | password | jdurant | USER |
Gestion de l'authentification in-memory
Documentations officielles
- Official Gradle documentation
- Spring Boot Gradle Plugin Reference Guide
- Create an OCI image
- Testcontainers Postgres Module Reference Guide
- Spring Boot DevTools
- Spring Security
- Spring Web
- Testcontainers
- Spring REST Docs
- Spring Data JPA
- Spring Boot Actuator