IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

avec Java Discussion :

Conversion de type


Sujet :

avec Java

  1. #1
    Membre régulier
    Profil pro
    Ingénieur d'études et développement JAVA
    Inscrit en
    Mai 2008
    Messages
    202
    Détails du profil
    Informations personnelles :
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Ingénieur d'études et développement JAVA
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mai 2008
    Messages : 202
    Points : 103
    Points
    103
    Par défaut Conversion de type
    Bonjour tout le monde,

    J'espère que vous allez m'apporter votre aide ou votre retour d'expérience .
    Mon problème est le suivant après la modélisation de mon "Domain Model" avec le diagramme de classe, j’écris le code SQL manuellement suivant le dialect de PostgreSQL, après je généré mes entités avec GlassFish ESB en utilisant TopLink comme fournisseur de persistance, jusqu'il n'y aucun problème .
    lorsque je veux utilisé une autre base de données par exemple Oracle 11g ou Sql Server 2008 c'est la ou commence mon problème car chaque base de donnée à son propre dialecte ce qui fait qu'il y a des types de données qui n'existe pas dans d'autre base de données ce qui m'oblige à faire des convertion de type au niveau de mes getter/setter pour certain type, je suis sur qu'il une manière plus élégante pour ce genre de problème, mais je suis débutant.

    J'attends votre aide le plus vite possible.

    Merci.

  2. #2
    Membre régulier
    Profil pro
    Ingénieur d'études et développement JAVA
    Inscrit en
    Mai 2008
    Messages
    202
    Détails du profil
    Informations personnelles :
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Ingénieur d'études et développement JAVA
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mai 2008
    Messages : 202
    Points : 103
    Points
    103
    Par défaut
    coucou,

    J'ai besoin de votre aide

  3. #3
    Membre émérite
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Septembre 2008
    Messages
    1 190
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Septembre 2008
    Messages : 1 190
    Points : 2 659
    Points
    2 659
    Par défaut
    Tu peux utiliser des outils avec lesquel tu vas construire tes modèles de base de données, et en suite générer tout le code correspondant à la base de donnée que tu utilises (Oracle, ...)

  4. #4
    Membre régulier
    Profil pro
    Ingénieur d'études et développement JAVA
    Inscrit en
    Mai 2008
    Messages
    202
    Détails du profil
    Informations personnelles :
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Ingénieur d'études et développement JAVA
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mai 2008
    Messages : 202
    Points : 103
    Points
    103
    Par défaut
    Merci de votre réponse,

    J'ai effectivement penser à cela, mais j'aurai des DAO différents, or je veux avoir un seul DAO pour toutes les bases de données.
    Est ce possible, merci.

  5. #5
    Membre émérite
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Septembre 2008
    Messages
    1 190
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Septembre 2008
    Messages : 1 190
    Points : 2 659
    Points
    2 659
    Par défaut
    Tes pojos de tes objets en base seront les même de toute façon.

    Et pour ta DAO, et bien c'est à voir avec ce que tu prends comme moteur de persistance.

  6. #6
    Rédacteur
    Avatar de thierryler
    Homme Profil pro
    Inscrit en
    Octobre 2007
    Messages
    4 078
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Octobre 2007
    Messages : 4 078
    Points : 12 815
    Points
    12 815
    Par défaut
    Vu que tu utilises EclipseLink (anciennement toplink), tu as la possibilité de faire du JPA et donc des trucs standards et portables. Est ce que tu utilises vraiment des spécificités de ta base ?
    Thierry Leriche-Dessirier
    Consultant Java JEE Web Agile freelance
    Rédacteur pour Developpez
    Professeur de Génie Logiciel à l'ESIEA

    Site : http://www.icauda.com / Linked'in : http://www.linkedin.com/in/thierryler / Twitter : @ThierryLeriche

  7. #7
    Membre régulier
    Profil pro
    Ingénieur d'études et développement JAVA
    Inscrit en
    Mai 2008
    Messages
    202
    Détails du profil
    Informations personnelles :
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Ingénieur d'études et développement JAVA
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mai 2008
    Messages : 202
    Points : 103
    Points
    103
    Par défaut
    J'utilise JPA avec le provider de persistance TopLink, le problème c'est que les bases de données en des dialects différents, voila donc un exemple que je rencontre avec Oracle:
    Le probléme et le suivant , j'ai une base de donnée Oarcle qui ne supporte pas le type boolean, or PostgresSql support le type boolean donc je le represente avec Number(1,0), lorsque je génère mes Entity Bean JPA avec TopLink , il me génère un type Char .
    La seul solution que j'ai trouvé pour le moment et de modifier mes getter/setter pour faire la conversion vers le type boolean,
    mais la ça demande une intervention humain c'est pas pratique du tous vue le nombre de table que j'ai.

    Merci de votre aide.

  8. #8
    Expert éminent sénior
    Avatar de tchize_
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Avril 2007
    Messages
    25 482
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 45
    Localisation : Belgique

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2007
    Messages : 25 482
    Points : 48 807
    Points
    48 807
    Par défaut
    je connais pas des masses toplink, mais normalement c'est au dialect de savoir qu'il doit mapper un boolean (type du bean) sur un champde type varchar(1) contenant 'Y' ou 'N'. Ton code a pas à s'en souciser. Je te recommande de travailler dans l'autre sens. Tu crée tes beans (avec les types java dont tu as besoin) et après tu demande à toplink ou autre de générer le schéma de base de données qui correspond. Au moins, c'est le code qui est commun.

  9. #9
    Membre émérite
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Septembre 2008
    Messages
    1 190
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Septembre 2008
    Messages : 1 190
    Points : 2 659
    Points
    2 659
    Par défaut
    J'aurais tendance à procéder de la même manière. Normalement il devrait se débrouiller pour l'implémenter dans toutes les bases.

Discussions similaires

  1. [DATE][CONVERSION] du type numerique au type date
    Par hamed dans le forum MS SQL Server
    Réponses: 6
    Dernier message: 06/04/2005, 16h16
  2. Conversion de type
    Par sovitec dans le forum Langage
    Réponses: 5
    Dernier message: 15/12/2004, 14h29
  3. Conversion de type
    Par poirier dans le forum ASP
    Réponses: 2
    Dernier message: 06/07/2004, 10h30
  4. [MYSQL] conversion de type sur import de script
    Par sebos63 dans le forum SQL Procédural
    Réponses: 2
    Dernier message: 27/08/2003, 10h00
  5. Réponses: 2
    Dernier message: 05/06/2002, 12h29

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo