Rapport MangoDB et Java
Réalisée par : Encadré par :
Fettahi Nouhaila Mr.EL Achak Lotfi
Année universitaire 2023/2024
1
Objectif : L’objectif principal de cet atelier est de gérer les donnes à travers une Base de
données MangoDB.
Outils : MangoDB, Json.
Exercice 1 :
1)Lancer MongoDB.
2)Se connecter à la base de données « DBPL ».
3)Créer une collection « publis ».
4)Créer le document suivant au niveau de la collection « publis » :
2
5)Consulter le contenu de la collection « publis ».
La commande illustrée sur l’image est responsable de retourner le contenue de la collection
publis.
6)Importer les données depuis le fichier « dblp.json » , le fichier ci joint au document.
A partie de l’option « add data » on import le fichier de la base sous forme de json, et a partir
du fichier on reçoit les donnes demandée .
7)Afficher tous les livres (type « Book »).
Cette commande est responsable du filtre des livres du type book, et les afficher.
3
8)Afficher toutes les publications depuis 2011
Ici on cherche avec find tous les publication, et gte (Supérieur ou égale) filtres les années
depuis 2011.
Exercice 2 :
1)Créer une base de données employe_db puis une collection : employee_info
2)Insérer le tableau suivant dans la collection employee_info :
4
3)Compter le nombre des employés dans la collection, puis compter le nombre des employés
du département marketing.
Ici on compte le nombre total des employés qui est égale a 7, et le nombre des employés du
département marketing 2 avec la commande « countDocuments ».
4)Lister tous les employés qui on un rôle manager et worker.
Cette Image présente un exemple d’employé qui a rôle manager.
Cette Image présente un exemple d’employé qui a rôle Worker.
5)Supprimer l’employé mahesh.
5
Avec la commande deletOne on a supprimer l’employé « Mahesh » et le conteur
deletedCount assure la bonne suppression de l’employé.
6)Modifier employé shruti , en changent son de rôle de worker vers team leader, puis on
l’affect au département IT.
Avec la commande updateOne on modifie l’employé du nom « Shruti » en lui donnant les
critères à modifier avec « set ».
Ici c’est juste une commande pour la vérification est ce que la modification est passée avec
succès.
Exercice 3 :
1)Créer une base de données art_db puis une collection : movies_info.
6
2)Importer le fichier movieDetails.json dans la collection : movies_info.
3)Sectionner des films réalisés en 1970 ou avant.
7
Cette commande find renvoi les filmes et avec l’ajoute de « lte » on filtre juste les inferieurs
ou égal a 1970.
4)Sectionner des films qui ont été réalisés en 1970 ou avant, mais après 1965.
Ici on a combine « lte » et « gt » pour garantir que les deux conditions de la date seront réaliser.
5)Sectionner des films dont la durée est supérieure à 3 heures et dont la note imdb.rating est
supérieure à 8.
Dans la base de données, il n'y a pas de film correspondant aux critères demandés, c'est
pourquoi la commande n'a rien renvoyé.
6)Sectionner des films dont le champ de classification ne contient pas la valeur "NOT
RATED".
8
Toujours avec la commande find mais nous avons ajouter « ne » comme critère cette fois si, n'est pas
égal pour avoir les filmes qui n’ont pas « NOT RATED » dans le champ de classification.
7) Trouver les films qui ont été étiquetés comme l'un des genres suivants : Sport, Talk-Show
ou News.Des genres plutôt inhabituels pour un film !
8)Trouver les films dont les recettes au boxOffice en "Amérique" ont été supérieures à :
$100m / $150m
9)Quel est le nombre maximum de pays dans lesquels un film a été tourné ? Et quels étaient
ces films ?