|
Publicité ' | |||||||||||||||||||||||
|
|
#1 |
![]() ![]() Thierry Leriche-DessirierInscription : octobre 2007 Messages : 2 135 ![]() |
Bonjour à tous,
Je vous propose un petit article dans la série "en 5 minutes", intitulé "Charger des données depuis un fichier CSV simple en 5 minutes". Vous trouverez l'article à l'adresse http://thierry-leriche-dessirier.dev...ier-csv-5-min/ Retrouvez également les autres tutoriels de cette série à l'adresse http://thierry-leriche-dessirier.dev...#page_articles Bonne lecture.
__________________
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 |
|
10
|
|
|
#2 |
|
Candidat au titre de Membre du Club
![]() Yan BonnelDéveloppeur Java Inscription : mai 2006 Messages : 8 ![]() |
Bonjour,
J'ai réaliser un petit moteur csv à base d'annotations pour mes besoins perso (que je trouve plus simple à utiliser qu'open-csv). Ce moteur est dispo ici : https://github.com/ybonnel/MoteurCsv (LGPLv3). Et l'utilisation peut être vu dans la classe de test : https://github.com/ybonnel/MoteurCsv...urCsvTest.java Espérant que cela puisse servir à quelqu'un. |
|
00
|
|
|
#3 | |
![]() ![]() Thierry Leriche-DessirierInscription : octobre 2007 Messages : 2 135 ![]() |
Citation:
Quelles sont les différences entre Open CSV et votre lib ? Si la lib remplie ses promesses de simplicité, tout en offrant le même niveau de service, je la prendrai en compte dans l'article. A noter également le tutoriel "Les fichiers CSV avec Java" : http://thierry-leriche-dessirier.dev...csv-avec-java/
__________________
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 |
|
|
00
|
|
|
#4 |
|
Candidat au titre de Membre du Club
![]() Yan BonnelDéveloppeur Java Inscription : mai 2006 Messages : 8 ![]() |
Elle est loin d'être au niveau d'open csv en terme de fonctionnalité (mais je prendrai en compte des pull request avec plaisir
Pas de gestion multi-ligne, utilisé que sur des cas simple (en même temps c'est le titre du tuto Je l'ai créé quand j'ai eu à décodé du GTFS dans le cadre d'une appli android sur les transports de Rennes et Bordeaux. L'intérêt est que ça me prend vraiment 5 minutes montre en main pour ajouté la gestion d'un fichier, et 1 minute pour ajouter une colonne dans le CSV. Il est par contre indispensable d'avoir un entête au csv, la gestion des colonnes étant géré par nom et non par position. En y réfléchissant, je pense que cela pourrait se positionner comme sur-couche à open csv. |
|
00
|
|
|
#5 | |
![]() ![]() Thierry Leriche-DessirierInscription : octobre 2007 Messages : 2 135 ![]() |
Citation:
__________________
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 |
|
|
00
|
|
|
#6 | ||||
|
Candidat au titre de Membre du Club
![]() Yan BonnelDéveloppeur Java Inscription : mai 2006 Messages : 8 ![]() |
Vi un peu, peut être plus simple dans le mapping (avec des annotations).
Exemple de classe métier : Code :
Code :
MoteurCsv moteur = new MoteurCsv(new ArrayList<Class<?>>(Collections.singletonList(ObjetCsv.class))); Code :
List<ObjetCsv> objets = moteur.parseInputStream(stream, ObjetCsv.class); Code :
|
||||
|
00
|
|
|
#7 |
![]() ![]() Thierry Leriche-DessirierInscription : octobre 2007 Messages : 2 135 ![]() |
Effectivement, ça a l'air super intéressant. Du coup, en surcouche d'open csv comme tu disais, ça peut le faire, surtout dans un doa. A ressemble presque à du jpa.
__________________
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 |
|
00
|
|
|
#8 |
|
Candidat au titre de Membre du Club
![]() Yan BonnelDéveloppeur Java Inscription : mai 2006 Messages : 8 ![]() |
Sur la ressemblance à du JPA, je faisait justement pas mal de JPA à l'époque ou je l'ai codé
Sur modifier mon "String.split" par un open-csv, ça pourrait être sympa, par contre faut que je regarde open-csv pour vérifier que cela est compatible avec mon utilisation principale qui est sur une application android (taille jar, compatibilité dalvik, ...). (ravi d'en discuter avec quelqu'un |
|
00
|
|
|
#9 |
![]() ![]() Thierry Leriche-DessirierInscription : octobre 2007 Messages : 2 135 ![]() |
Une des missions de developpez.com est d'encourager les bonnes initiatives. En outre ta lib m'intéresse carrément. Ce que je te propose, c'est de me décontracter directement à la fin du mois (je dois finir d'abord plusieurs trucs, notamment pour devoxx, sans oublier la compta...) et on voit ce qu'on peut faire. L'idéal serait de prolonger ce tutoriel avec l'utilisation de ta lib. Il faudra juste qu'elle soit dispo avec maven et ready. D'ici là je e laisse le soin d'avancer le sujet de ton côté. N'hésite pas à me tenir au courant. En tous cas bon travail.
__________________
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 |
|
00
|
|
|
#10 |
|
Candidat au titre de Membre du Club
![]() Yan BonnelDéveloppeur Java Inscription : mai 2006 Messages : 8 ![]() |
Pour la dispo avec Maven, c'est déjà le cas :
repo : https://repository-ybonnel.forge.cloudbees.com/release groupId : fr.ybo artifactId : moteurcsv Je regarde pour y mettre open-csv sur la couche de lecture de csv pour la rendre plus robuste. Voici mon mail : ybonnel@gmail.com On se verra sans doute à Devoxx France |
|
00
|
|
|
#11 |
|
Candidat au titre de Membre du Club
![]() Yan BonnelDéveloppeur Java Inscription : mai 2006 Messages : 8 ![]() |
Voici l'implémentation de l'article avec MoteurCsv :
https://github.com/ybonnel/notes4_do.....useMoteurCsv |
|
00
|
|
|
#12 |
![]() ![]() Thierry Leriche-DessirierInscription : octobre 2007 Messages : 2 135 ![]() |
Grosse mise-à-jour :
http://thierry-leriche-dessirier.dev...sv-5-min/#L1-C Ajout d'un exemple d'utilisation de la lib MoteurCsv en annexe. http://thierry-leriche-dessirier.dev...sv-5-min/#L6-C
__________________
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 |
|
00
|
|
|
#13 | ||||
![]() ![]() Thierry Leriche-DessirierInscription : octobre 2007 Messages : 2 135 ![]() |
màj : 12 juillet 2012
La version 1.2.0 de la lib MoteurCsv avec un objet "Resultat" en retour de la méthode "parseInputStream()" et la méthode "parseFileAndInsert()" qui ressemble à s'y méprendre à de la programmation fonctionnelle. Code :
Code :
__________________
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 |
||||
|
00
|
Copyright © 2000-2013 - www.developpez.com