Précédent   Forum du club des développeurs et IT Pro > Java > Général Java
Général Java Java SE, Java ME, APIs, Persistance, JDBC, Spring, XML. Avant de poster -> FAQ Java, Sources Java
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Actualité déjà publiée
 
Outils de la discussion
Publicité
'
Vieux 14/12/2012, 18h14   #1
thierryler
Rédacteur
 
Avatar de thierryler
 
Homme Thierry Leriche-Dessirier
Inscription : octobre 2007
Messages : 2 133
Détails du profil
Informations personnelles :
Nom : Homme Thierry Leriche-Dessirier
Localisation : France

Informations forums :
Inscription : octobre 2007
Messages : 2 133
Points : 5 907
Points : 5 907
Par défaut Implémenter le patron de conception DAO par les tests

Bonjour à tous,

Je vous propose un TP en Java. Ce TP vous montre comment écrire et tester un DAO en Java. Vous allez découvrir Maven, tracer le fonctionnement avec Log4j, tester vos méthodes avec JUnit, lire des fichiers CSV avec OpenCsv et CsvEngine, gérer des ressources en Java et bien plus encore...

http://thierry-leriche-dessirier.dev...et-tester-dao/

Bonne lecture.

Et comme d'habitude, n'oubliez pas de nous indiquer vos remarques, bonnes ou négatives, à la suite de ce message.

Th.
__________________
Thierry Leriche-Dessirier
Ingénieur Architecte JEE Freelance
Rédacteur pour Developpez
Professeur de Génie Logiciel à l'ESIEA

Page sur Developpez : http://thierry-leriche-dessirier.developpez.com
Site : http://www.icauda.com
Linked'in : http://www.linkedin.com/in/thierryler
Twitter : http://www.twitter.com/thierryleriche
thierryler est déconnecté   Envoyer un message privé Réponse avec citation 30
Vieux 27/12/2012, 12h00   #2
Khaled.Noordin
Membre éprouvé
 
Avatar de Khaled.Noordin
 
Homme Khaled Noordin Abou Imran
Inscription : janvier 2005
Messages : 341
Détails du profil
Informations personnelles :
Nom : Homme Khaled Noordin Abou Imran
Localisation : France, Hauts de Seine (Île de France)

Informations forums :
Inscription : janvier 2005
Messages : 341
Points : 468
Points : 468
Salut,
Je viens de parcourir l'article que j'ai trouvé très intéressant, merci pour ce contenu
__________________
Ce que l'on conçoit bien s'énonce clairement,
Et les mots pour le dire arrivent aisément. Nicolas Boileau

Si c'est résolu, cliquez, cliquez, cliquez!!!!
Khaled.Noordin est déconnecté   Envoyer un message privé Réponse avec citation 10
Vieux 27/12/2012, 13h50   #3
hwoarang
Membre Expert
 
Inscription : mai 2006
Messages : 1 011
Détails du profil
Informations forums :
Inscription : mai 2006
Messages : 1 011
Points : 1 185
Points : 1 185
Pour l'instant, je n'ai lu que l'intro mais ca a l'air tres interessant. Je dirais ce que j'en pense quand j'aurais lu la suite

Merci pour le tuto en tout cas
hwoarang est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 27/12/2012, 15h07   #4
dadoonet95
Candidat au titre de Membre du Club
 
Homme David Pilato
Directeur technique
Inscription : août 2009
Messages : 9
Détails du profil
Informations personnelles :
Nom : Homme David Pilato
Âge : 41
Localisation : France, Val d'Oise (Île de France)

Informations professionnelles :
Activité : Directeur technique
Secteur : High Tech - Multimédia et Internet

Informations forums :
Inscription : août 2009
Messages : 9
Points : 11
Points : 11
Par défaut Excellent boulot !

Travail très impressionnant, super détaillé. Bravo !
dadoonet95 est déconnecté   Envoyer un message privé Réponse avec citation 10
Vieux 02/01/2013, 11h37   #5
le y@m's
Rédacteur/Modérateur
 
Avatar de le y@m's
 
Homme Yann D'Isanto
Ingénieur développement logiciels
Inscription : février 2005
Messages : 2 642
Détails du profil
Informations personnelles :
Nom : Homme Yann D'Isanto
Âge : 30
Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

Informations professionnelles :
Activité : Ingénieur développement logiciels
Secteur : High Tech - Produits et services télécom et Internet

Informations forums :
Inscription : février 2005
Messages : 2 642
Points : 6 157
Points : 6 157
Beau travail .

Juste une petite remarque sur l'enum Sexe, l'attribut code me semble superflu à moins qu'il y ait une raison particulière de ne pas utiliser l'ordinal de l'enum ?
Code :
1
2
3
4
5
6
7
8
9
public enum Sexe {
 
    FEMALE,
    MALE
}
// Sexe.FEMALE.ordinal() -> 0
// Sexe.MALE.ordinal() -> 1
// Sexe.values()[0] -> Sexe.FEMALE
// Sexe.values()[1] -> Sexe.MALE
Après personnellement je préfère utiliser le nom de l'enum qui rend les fichiers de config plus lisible.
Code :
1
2
String str = sexe.name();
sexe = Sexe.valueOf(str);
L'inconvénient est que cela prend un peu plus de place (mais c'est très souvent négligeable).

Pareil pour l'enum RaceDeChien, pourquoi ajouter un attribut code au lieu d'utiliser le nom de l'enum (methode name()) ?
__________________
Je ne répondrai à aucune question technique par MP.

Pensez aux Tutoriels et aux FAQs avant de poster (pour le java il y a aussi JavaSearch), n'oubliez pas non plus la fonction Rechercher.
Enfin, quand une solution a été trouvée à votre problème
pensez au tag

Cours Dvp : http://ydisanto.developpez.com
Blog : http://yann-disanto.blogspot.com/
Page perso : http://yann-disanto.fr
le y@m's est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 02/01/2013, 11h54   #6
thierryler
Rédacteur
 
Avatar de thierryler
 
Homme Thierry Leriche-Dessirier
Inscription : octobre 2007
Messages : 2 133
Détails du profil
Informations personnelles :
Nom : Homme Thierry Leriche-Dessirier
Localisation : France

Informations forums :
Inscription : octobre 2007
Messages : 2 133
Points : 5 907
Points : 5 907
Bonjour,

Ce sont des très bonnes remarques.

Pour l'enum Sexe, j'ai mis un code pour avoir "1" et "2", comme sur le numéro de sécurité social. Ça permet d'avoir quelque chose de plus sympa dans le CSV.

Pour l'enum Race, j'ai voulu faire comme si le système à l'origine du fichier CSV (ou de la base de données) limitait le nombre de caractères à 8. C'est une contrainte qu'on retrouve encore dans de nombreux programmes.

En fait, il n'y a aucune raison pour qu'un programme distant utilise les mêmes noms d'enum que mon programme chez moi, et encore moins les mêmes notations.

Pourquoi je dis ça ? Parce que les fichiers CSV sont surtout utilisés pour transférer de l'information entre deux systèmes distants. Par exemple une boutique animalière à Bordeaux envoie une liste de chiens au format CSV au système central à Paris. En outre, cela permet à des web master tiers (sans lien avec la société) de reprendre les informations facilement, avec un format qui reste lisible.

Dans un vrai programme, il est assez rare, en effet, de stocker les données dans un fichier CSV. On utilise plutôt des bases de données pour ça.
__________________
Thierry Leriche-Dessirier
Ingénieur Architecte JEE Freelance
Rédacteur pour Developpez
Professeur de Génie Logiciel à l'ESIEA

Page sur Developpez : http://thierry-leriche-dessirier.developpez.com
Site : http://www.icauda.com
Linked'in : http://www.linkedin.com/in/thierryler
Twitter : http://www.twitter.com/thierryleriche
thierryler est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 02/01/2013, 14h05   #7
le y@m's
Rédacteur/Modérateur
 
Avatar de le y@m's
 
Homme Yann D'Isanto
Ingénieur développement logiciels
Inscription : février 2005
Messages : 2 642
Détails du profil
Informations personnelles :
Nom : Homme Yann D'Isanto
Âge : 30
Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

Informations professionnelles :
Activité : Ingénieur développement logiciels
Secteur : High Tech - Produits et services télécom et Internet

Informations forums :
Inscription : février 2005
Messages : 2 642
Points : 6 157
Points : 6 157
Citation:
Envoyé par thierryler Voir le message
Pour l'enum Sexe, j'ai mis un code pour avoir "1" et "2", comme sur le numéro de sécurité social. Ça permet d'avoir quelque chose de plus sympa dans le CSV.

Pour l'enum Race, j'ai voulu faire comme si le système à l'origine du fichier CSV (ou de la base de données) limitait le nombre de caractères à 8. C'est une contrainte qu'on retrouve encore dans de nombreux programmes.

En fait, il n'y a aucune raison pour qu'un programme distant utilise les mêmes noms d'enum que mon programme chez moi, et encore moins les mêmes notations.

Pourquoi je dis ça ? Parce que les fichiers CSV sont surtout utilisés pour transférer de l'information entre deux systèmes distants. Par exemple une boutique animalière à Bordeaux envoie une liste de chiens au format CSV au système central à Paris. En outre, cela permet à des web master tiers (sans lien avec la société) de reprendre les informations facilement, avec un format qui reste lisible.
Mais du coup l'enum est liée au-dit système. On peut vouloir utiliser l'enum dans un autre système qui a d'autres contraintes.

Si on a besoin d'utiliser des IDs particuliers (pour cause de limitation de caractère ou pour qu'un autre système puisse charger les données dans un modèle différent) c'est à la couche de sérialisation de s'en occuper (en utilisant des Map par exemple), pas au modèle .

Contrairement aux idées reçues ça ne demande pas beaucoup plus de temps à écrire et ce n'est pas plus compliqué. L'avantage est qu'on se retrouve avec un modèle simple beaucoup plus facile à lire et à appréhender. Et la spécificité due à un système est isolée du modèle .
__________________
Je ne répondrai à aucune question technique par MP.

Pensez aux Tutoriels et aux FAQs avant de poster (pour le java il y a aussi JavaSearch), n'oubliez pas non plus la fonction Rechercher.
Enfin, quand une solution a été trouvée à votre problème
pensez au tag

Cours Dvp : http://ydisanto.developpez.com
Blog : http://yann-disanto.blogspot.com/
Page perso : http://yann-disanto.fr
le y@m's est déconnecté   Envoyer un message privé Réponse avec citation 10
Vieux 02/01/2013, 14h37   #8
thierryler
Rédacteur
 
Avatar de thierryler
 
Homme Thierry Leriche-Dessirier
Inscription : octobre 2007
Messages : 2 133
Détails du profil
Informations personnelles :
Nom : Homme Thierry Leriche-Dessirier
Localisation : France

Informations forums :
Inscription : octobre 2007
Messages : 2 133
Points : 5 907
Points : 5 907
Effectivement, pris comme ça, tu as raison. Toutefois ça reste un point de détail dans le programme ;-)
__________________
Thierry Leriche-Dessirier
Ingénieur Architecte JEE Freelance
Rédacteur pour Developpez
Professeur de Génie Logiciel à l'ESIEA

Page sur Developpez : http://thierry-leriche-dessirier.developpez.com
Site : http://www.icauda.com
Linked'in : http://www.linkedin.com/in/thierryler
Twitter : http://www.twitter.com/thierryleriche
thierryler est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Actualité déjà publiée
Outils de la discussion

Navigation rapide


Fuseau horaire GMT +2. Il est actuellement 10h11.


 
 
 
 
Partenaires

Hébergement Web