abdalhafid /
diagnostique-medical-java-avec-prolog-
c'est un mini projet pour le TP de system expert il aider vous à prendre une idée sur comment connect et utiliser prolog dans java pour cree un system expert (de diagnostique)
Loading repository data…
brandon0638 / repository
C'est un mini projet qui utilise socket avec java dont le theme est MiniSpotify. En gros c'est un streaming audio.
Application client-serveur style Spotify développée en Java avec Sockets et Swing.
MiniSpotify/
│
├── SpotifyServeur/ ← Serveur (à lancer en premier)
│ ├── src/
│ │ ├── MainServer.java Port 5000 (clients) + 5001 (admins)
│ │ ├── ClientHandler.java Gère 1 client par thread
│ │ ├── AdminHandler.java Gère 1 admin par thread
│ │ └── MusiqueService.java Accès aux fichiers MP3
│ ├── lib/
│ │ └── jlayer-1.0.1.jar
│ └── data/
│ ├── musiques/ ← Mettez vos MP3 ici !
│ └── temp_uploads/ ← Upload temporaire
│
├── SpotifyClient/ ← Interface client style Spotify
│ ├── src/
│ │ ├── client/
│ │ │ ├── SpotifyClientApp.java Fenêtre principale
│ │ │ ├── ServerConnection.java Connexion socket
│ │ │ ├── AudioPlayer.java Lecteur audio JLayer
│ │ │ └── ui/
│ │ │ ├── SpotifyColors.java Palette de couleurs
│ │ │ ├── RoundedButton.java Boutons arrondis
│ │ │ ├── MusicCard.java Carte d'album
│ │ │ ├── PlayerBar.java Barre de lecture
│ │ │ ├── Sidebar.java Navigation gauche
│ │ │ ├── MainPanel.java Grille de musiques
│ │ │ ├── ConnectDialog.java Dialogue connexion
│ │ │ ├── ProgressSlider.java Slider progression
│ │ │ ├── VolumeSlider.java Slider volume
│ │ │ └── WrapLayout.java Grille responsive
│ └── lib/
│ └── jlayer-1.0.1.jar (+ flatlaf-*.jar si disponible)
│
├── SpotifyAdmin/ ← Interface admin (gestion musiques)
│ ├── src/
│ │ ├── admin/
│ │ │ ├── SpotifyAdminApp.java Interface admin Swing
│ │ │ ├── AdminConnection.java Connexion socket admin
│ │ │ └── ui/
│ │ │ └── AdminColors.java Palette admin
│ └── lib/
│ └── jlayer-1.0.1.jar
│
├── run.bat ← Compile + lance (Windows)
└── run.sh ← Compile + lance (Linux/Ubuntu)
run.bat # Compile tout + menu interactif
run.bat serveur # Lance directement le serveur
run.bat client # Lance directement le client
run.bat admin # Lance directement l'admin
chmod +x run.sh
./run.sh # Compile tout + menu interactif
./run.sh serveur # Lance le serveur
./run.sh client # Lance le client
./run.sh admin # Lance l'admin
PC Admin ──────────────────────────→ Port 5001 (AdminHandler)
↑
SERVEUR (MainServer)
↑
PC Client 1 ────────────────────────→ Port 5000 (ClientHandler)
PC Client 2 ────────────────────────→ Port 5000 (ClientHandler)
PC Client N ────────────────────────→ Port 5000 (ClientHandler)
Plusieurs clients peuvent se connecter simultanément. Un ou plusieurs admins se connectent sur le port 5001.
| Commande | Description |
|---|---|
LIST | Reçoit la liste des MP3 |
PLAY <fichier> | Reçoit le fichier MP3 en streaming |
DOWNLOAD <fichier> | Télécharge le fichier MP3 |
NEXT | Musique suivante |
PREVIOUS | Musique précédente |
SEEK <sec> | Confirmation seek |
QUIT | Déconnexion |
| Commande | Description |
|---|---|
LIST | Reçoit COUNT N puis N noms |
UPLOAD_START <nom> <taille> | Upload un fichier MP3 |
REMOVE <fichier> | Supprime un MP3 |
ADD <fichier> | Déplace depuis temp_uploads/ |
EXIT | Déconnexion |
| Fichier | Usage | Où le mettre |
|---|---|---|
jlayer-1.0.1.jar | Lecture MP3 | SpotifyClient/lib/ et SpotifyServeur/lib/ |
flatlaf-*.jar | Thème sombre natif (optionnel) | SpotifyClient/lib/ et SpotifyAdmin/lib/ |
FlatLaf améliore l'aspect des composants Swing (boutons système, scrollbars, etc.). Téléchargez-le sur : https://www.formdev.com/flatlaf/
Pour changer les ports, modifiez MainServer.java :
public static final int CLIENT_PORT = 5000; // clients
public static final int ADMIN_PORT = 5001; // admins
"Impossible de se connecter" → Vérifiez que le serveur est lancé en premier → Vérifiez l'IP et le port → Désactivez temporairement le pare-feu Windows
"Aucune musique disponible"
→ Placez des fichiers .mp3 dans SpotifyServeur/data/musiques/
Pas de son
→ Vérifiez que jlayer-1.0.1.jar est dans SpotifyClient/lib/
FlatLaf non trouvé → Normal, l'application fonctionne sans ; les thèmes natifs Swing sont utilisés
Selected from shared topics, language and repository description—not editorial ratings.
abdalhafid /
c'est un mini projet pour le TP de system expert il aider vous à prendre une idée sur comment connect et utiliser prolog dans java pour cree un system expert (de diagnostique)
hachibane /
C'est un projet qui consiste à construire un compilateur de Java en O'caml. Le projet regroupe les membres suivants : Hamza Achibane, Hamza Sahri, Khaled Bousrih, Khalid Majdoub et Robin You.
Avotra7 /
c'est une programme socket ecrit en java. c'est un mini SGBD
Alpha1037 /
C'est un mini-projet en java sur les robots en similation console
HAIFABRK /
C'est un mini projet de gestion d'une bibliothèque développé en JavaFX
dinahasina /
C'est un mini projet en java pour relier le serveur sql et