Projet de java sur la gestion des employés
Projet de java sur la gestion des employés
DESCRIPTION
Ce petit projet en Java vous permet d'enregistrer des employés avec certaines infos (Nom, Sexe, Date de naissance, Adresse, Historique de salaires et de fonctions).
Il enregistre en utilisant la sérialisation.
Objectifs:
- Utilisation des outils de la POO en Java;
- Utilisation de la classe File;
- Utilisation de la classe JFileChooser;
- Utilisation de la sérialisation (dauvegarde d'objets);
- Utilisation (avec le point précédent) de ObjectInputStream et ObjectOutputStream, se référer à la page 20 des notes de cours sur les fichiers;
- Class Vector.
L’application contient 17 classes:
- Adresse
- Ajout Fonction
- Ajout Salaire
- Employé
- Filtre Extension
- Fonction
- Fonction Table model
- Gestion Employé
- Limited Doc
- Outils
- Panel Ajout Employé
- Personne
- Rapport
- Recherche Employé
- Recherche Fonction
- Salaire
- Salaire Table model
Aperçu du codage de certaines classes de l’application :
Classe Employé :
/**
* Description: Objet Employe. Extends Personne et contient une Adresse.
* Copyright: Copyright (c) 2003
* @author Carl Fauteux
* @version 1.0
*/
import java.util.*;
import java.io.*;
public class Employe extends Personne implements Serializable
{
private String nas;
private Adresse adresse;
private Vector fonctions = new Vector(5);
private Vector salaires = new Vector(10);
// Constructeur
public Employe(String leNom, String lePrenom, int leSexe, Date naissance,
String leNas, Adresse adr)
{
super(leNom, lePrenom, leSexe, naissance);
nas = leNas;
adresse = adr;
} // Fin du constructeur
// Méthodes set
public void setNas(String leNas) { nas = leNas; }
public void adresse(Adresse adr) { adresse = adr; }
// Méthodes get
public String getNas() { return nas; }
public Adresse getAdresse() { return adresse; }
public int getNbFct() { return fonctions.size(); }
public int getNbSalaires() { return salaires.size(); }
public Fonction getFonction(int index)
{
return (Fonction)fonctions.elementAt(index);
}
public Salaire getSalaire(int index)
{
return (Salaire)salaires.elementAt(index);
}
// Méthode toString
public String toString()
{
return (super.toString() + "\n" + nas + "\n" + adresse);
}
// Méthodes pour ajouter des éléments dans les Vectors fonctions et salaires
// Méthode pour ajouter une seule fonction
public void addFonction(Fonction nlleFonction)
{
// Ajout de la fonction au début du tableau
fonctions.add(0, nlleFonction);
if(fonctions.size() > 5)
{
// Redimensionnement du Vector (max 5 fonctions)
fonctions.setSize(5); // Le reste est perdu...
fonctions.trimToSize(); // On s'assure de ne pas gaspiller d'espace memoire.
}
} // Fin de addFonction
// Méthode pour copier un Vector contenant des fonctions
public void addFonction(Vector nlleFonctions)
{
fonctions = nlleFonctions;
if(fonctions.size() > 5)
{
// Redimensionnement du Vector (max 5 fonctions)
fonctions.setSize(5); // Le reste est perdu...
fonctions.trimToSize(); // On s'assure de ne pas gaspiller d'espace memoire.
}
}
// Méthode pour ajouter un seul salaire
public void addSalaire(Salaire newSalaire)
{
// Ajout de la fonction au début du tableau
salaires.add(0, newSalaire);
if(salaires.size() > 10)
{
// Redimensionnement du Vector (max 10 salaires)
salaires.setSize(10); // Le reste est perdu...
salaires.trimToSize(); // On s'assure de ne pas gaspiller d'espace memoire.
}
} // Fin de addSalaire
// Méthode pour copier un Vector contenant des salaires
public void addSalaire(Vector newSalaires)
{
salaires = newSalaires;
if(salaires.size() > 10)
{
// Redimensionnement du Vector (max 10 salaires)
salaires.setSize(10); // Le reste est perdu...
salaires.trimToSize(); // On s'assure de ne pas gaspiller d'espace memoire.
}
}
} // Fin de la classe
...
Classe "Personne"
/**
* Title: TP2 (Personne)
* Description: Objet Personne.
* Copyright: Copyright (c) 2003
* @author Carl Fauteux
* @version 1.0
*/
import java.util.*;
import java.io.*;
public class Personne implements Serializable
{
// Constantes
public static int MALE = 1;
public static int FEMALE = 2;
private String nom,
prenom;
private int sexe;
private Date birth;
// Constructeur
public Personne(String leNom, String lePrenom, int leSexe, Date naissance)
{
nom = leNom;
prenom = lePrenom;
if(leSexe == MALE || leSexe == FEMALE)
sexe = leSexe;
else
sexe = MALE;
birth = naissance;
} // Fin du constructeur
// Méthodes "set"
public void setNom(String leNom) { nom = leNom; }
public void setPrenom(String lePrenom) { prenom = lePrenom; }
public void setSexe(int leSexe) { sexe = leSexe; }
public void setBirth(Date naissance) { birth = naissance; }
// Méthodes "get"
public String getNom() { return nom; }
public String getPrenom() { return prenom; }
public int getSexe() { return sexe; }
public Date getBirth() { return birth; }
// Méthode toString
public String toString()
{
String leSexe;
if(sexe == MALE)
leSexe = "Masculin";
else
leSexe = "Féminin";
return (nom + ", " + prenom + " " + leSexe + " " + birth);
}
} // Fin de la classe Personne