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

JSF Java Discussion :

données persistantes et application web


Sujet :

JSF Java

  1. #1
    Membre éclairé
    Inscrit en
    Mai 2005
    Messages
    258
    Détails du profil
    Informations forums :
    Inscription : Mai 2005
    Messages : 258
    Par défaut données persistantes et application web
    Bonjour,

    je suis assez nouveau dans les application web en java. J'ai décidé de me mettre à jsf pour cela.

    Mais j'ai un problème avec la connection à la DB. Dans le tutoriel que j'ai suivi, il parlait de créer des données persistantes. Je ne comprend pas très bien la logique derrière. Et surtout je ne vois pas comment faire cela. Y a-t-il un bon tutoriel pour cela (j'ai cherché mais j'ai pas trouvé). Aussi, mes requêtes SQL sont assez complexe parfois, Est-ce opportun d'utiliser cette technique?

    Si non, quelle autre technique puis-je utiliser?

    Si je ne suis pas dans le bon forum, je m'en excuse.

  2. #2
    Membre chevronné
    Profil pro
    Inscrit en
    Janvier 2006
    Messages
    511
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2006
    Messages : 511
    Par défaut
    Je ne comprends pas bien ta question...

    tes données persistante sont ceux de ta base. Apres à toi de les persister comme tu veux (JDBC, Hibernate...).

  3. #3
    Membre confirmé
    Profil pro
    Analyste programmeur
    Inscrit en
    Novembre 2006
    Messages
    197
    Détails du profil
    Informations personnelles :
    Localisation : Tunisie

    Informations professionnelles :
    Activité : Analyste programmeur

    Informations forums :
    Inscription : Novembre 2006
    Messages : 197
    Par défaut
    tu as le choix entre EJB3+JPA et hibernate et toplink.

    se sont des outils ou des framawork pour pouvoir connecter avec votre base de donneés .

    et selon votre application tu as le choix entre eux.

  4. #4
    Membre éprouvé
    Inscrit en
    Juin 2006
    Messages
    94
    Détails du profil
    Informations forums :
    Inscription : Juin 2006
    Messages : 94
    Par défaut
    Tu as une explication en FR + exemples pour Hibernate ici:

    au format HTML
    http://www.hibernate.org/hib_docs/reference/fr/html/

    au format PDF
    http://www.hibernate.org/hib_docs/re..._reference.pdf


    Si je ne me trompe pas Toplink est surtout orienté/utilisé pour ORACLE

  5. #5
    Membre expérimenté Avatar de a.snaps
    Profil pro
    Inscrit en
    Janvier 2007
    Messages
    209
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Janvier 2007
    Messages : 209
    Par défaut
    Pour être plus exacte tu as le choix entre pas mal de possibilité.
    Mais ce que tu as lu fait sans doute référence à JPA: Java Persistence API.
    JPA est une partie de la spécification EJB3 et te permets maintenant de persisté des POJO (Plain Old Java Object ou simple objet java) qui ont été préalablement annoté.
    La forme la plus simple étant:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
     
    @Entity
    public class NonSense {
     
       @Id
       private Long id;
     
       public Long getId() {
          return id;
       }
    }
    Mais JPA à lui tout seul n'est rien. Il ne s'agit que la spécification. Tu dois encore choisir un "Provider", qui implémente toute cette spec et persistera de façon transparente des entités dans la BD de ton choix.
    Hibernate, TopLink sont des choix parmis d'autre.
    Alex

  6. #6
    Membre confirmé
    Profil pro
    Analyste programmeur
    Inscrit en
    Novembre 2006
    Messages
    197
    Détails du profil
    Informations personnelles :
    Localisation : Tunisie

    Informations professionnelles :
    Activité : Analyste programmeur

    Informations forums :
    Inscription : Novembre 2006
    Messages : 197
    Par défaut
    dernierement j'ai lu un article j'ai compris que la meilleur solution et de utiliser EJB3 et JPA pour que l'application soit tres ouvert et pas de contrainte.

    pour developer une application il n'est pas obligatoire d'utiliser des provider

    est il vrai?

  7. #7
    Membre éprouvé
    Inscrit en
    Juin 2006
    Messages
    94
    Détails du profil
    Informations forums :
    Inscription : Juin 2006
    Messages : 94
    Par défaut
    Hello,

    Moi je ne suis pas tout à fait convaincu, cela dépend du type d'application que tu veux implémenter.

    C'est comme utiliser un fusil pour tuer une mouche. EJB3 n'est pas une réponse à toutes les problèmes.

    Hibernate est depuis la version 3 est devenu très puissant et ouvert.

    Bien évidemment rien ne t'oblige à utiliser un "provider", mais dans une application n-tiers le moindre chagement va s'en faire resentir à tous les niveaux de ton application.

  8. #8
    Membre expérimenté Avatar de a.snaps
    Profil pro
    Inscrit en
    Janvier 2007
    Messages
    209
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Janvier 2007
    Messages : 209
    Par défaut
    Dans le cadre de JPA (et par extension, de tout le stacak JEE), un "Provider" est toujours nécessaire! Sinon pas de persistence!
    Par défault, Glassfish vient avec Toplink esentials, comme provider de persistence à la couche JPA!
    Sinon, je suis assez d'accord avec dzafer, tout le stack JEE, ou même tout EJB3 est assez lourd! Par contre, je conseilerais assez d'utiliser JPA avec Hibernate3 et non Hibernate3 tout seul. Si une fonctionalité d'Hibernate est nécessaire, que JPA ne supporte pas, tu peux toujours:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Session session = (Session) getEntityManager().getDelegate();
    Et te voilà avec la une bonne vieille session Hibernate!
    De la sorte, si pour une raison quelconque, tu veux passer à TopLink, ailleurs, c'est transparent et il te suffit de changer ton persistence.xml.

    Alex

  9. #9
    Membre confirmé
    Profil pro
    Analyste programmeur
    Inscrit en
    Novembre 2006
    Messages
    197
    Détails du profil
    Informations personnelles :
    Localisation : Tunisie

    Informations professionnelles :
    Activité : Analyste programmeur

    Informations forums :
    Inscription : Novembre 2006
    Messages : 197
    Par défaut
    tu veux dire que je developpe avec hibernate et a tous moment je peux le faire basculer vers toplink.

    mais comment? tu as fait un test de bascule?

  10. #10
    Membre expérimenté Avatar de a.snaps
    Profil pro
    Inscrit en
    Janvier 2007
    Messages
    209
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Janvier 2007
    Messages : 209
    Par défaut
    A mon avis tu développes avec TopLink Essentials pout le moment.
    JDevelopper aura sûrement une préférence pour les produits Oracle. Si tu utilise Glassfish, lui aussi vient avec TopLink Essentials comme provider de persistence.
    Alex

  11. #11
    Membre confirmé
    Profil pro
    Analyste programmeur
    Inscrit en
    Novembre 2006
    Messages
    197
    Détails du profil
    Informations personnelles :
    Localisation : Tunisie

    Informations professionnelles :
    Activité : Analyste programmeur

    Informations forums :
    Inscription : Novembre 2006
    Messages : 197
    Par défaut
    je n'ai pas utilisé toplink avec jdeveloper ,mon but est de bien comprendre le processus de developpement de ces differents technologies meme que j'ai plusieur idée,

    je me demande de basculer vers eclipse et je ne sais pas, car je vais faire une formation avec un consultant de j2ee et il a reclamé d'utiliser eclipse avec certain plugin.ça en discution rien est sûr.

    encore merci a tous tu es nouveau presque comme moi et tu as navigue sur la totalité du site.

  12. #12
    Inactif  
    Profil pro
    Inscrit en
    Mai 2006
    Messages
    2 189
    Détails du profil
    Informations personnelles :
    Âge : 45
    Localisation : Suisse

    Informations forums :
    Inscription : Mai 2006
    Messages : 2 189
    Par défaut
    toplink ca pue, ca reste propriétaire,netbeans c est pareil ...

    va faire une formation en dev J2EE tu veras la merde que te proposes ces grands éditeurs ...

  13. #13
    Membre confirmé
    Profil pro
    Analyste programmeur
    Inscrit en
    Novembre 2006
    Messages
    197
    Détails du profil
    Informations personnelles :
    Localisation : Tunisie

    Informations professionnelles :
    Activité : Analyste programmeur

    Informations forums :
    Inscription : Novembre 2006
    Messages : 197
    Par défaut
    si tu es tellement experimenté saves tu comment faire une requette dans managed bean ou dans entité bean ou sessionbean"cette requette doit etre parametrable varie selon la demande pour but faire de recherche selon plusieur critere qui varie selon la recherche"

    merci

  14. #14
    Inactif  
    Profil pro
    Inscrit en
    Mai 2006
    Messages
    2 189
    Détails du profil
    Informations personnelles :
    Âge : 45
    Localisation : Suisse

    Informations forums :
    Inscription : Mai 2006
    Messages : 2 189
    Par défaut
    tu trouves que c est vraiment une forme d expérience ?

  15. #15
    Inactif  
    Profil pro
    Inscrit en
    Mai 2006
    Messages
    2 189
    Détails du profil
    Informations personnelles :
    Âge : 45
    Localisation : Suisse

    Informations forums :
    Inscription : Mai 2006
    Messages : 2 189
    Par défaut
    Dans un contexte normale pour obtenir ce genre d'informations un développeur ne devrait executé qu une requëte :

    SELECT mycriteria FROM someTable WHERE aCriteria = (SELECT aConditon FROM someCriteria WHERE IcanSolve = '2'

  16. #16
    Inactif  
    Profil pro
    Inscrit en
    Mai 2006
    Messages
    2 189
    Détails du profil
    Informations personnelles :
    Âge : 45
    Localisation : Suisse

    Informations forums :
    Inscription : Mai 2006
    Messages : 2 189
    Par défaut
    et franchement ca se limiterait à un bas niveau

  17. #17
    Membre expérimenté Avatar de a.snaps
    Profil pro
    Inscrit en
    Janvier 2007
    Messages
    209
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Janvier 2007
    Messages : 209
    Par défaut
    Citation Envoyé par mbouzouita
    je n'ai pas utilisé toplink avec jdeveloper ,mon but est de bien comprendre le processus de developpement de ces differents technologies meme que j'ai plusieur idée,

    je me demande de basculer vers eclipse et je ne sais pas, car je vais faire une formation avec un consultant de j2ee et il a reclamé d'utiliser eclipse avec certain plugin.ça en discution rien est sûr.

    encore merci a tous tu es nouveau presque comme moi et tu as navigue sur la totalité du site.
    Je ne dis pas que tu as utilisé TopLink avec JDeveloper!
    JDeveloper est un EDI et pas un Application Server! C'est à ce dernier d'intégrer un Provider JPA afin que les entités de ton application puissent être persistées!
    Que tu utilises Eclipse, Glassfish, JBoss ou Hibernate avec Tomcat cela ne change rien au concept derrière Java et Java EE: Write Once, Run Everywhere!
    Le déploiement peut changé, mais pas ton application...
    Sincèrement, je me répète, à mon humble avis, certains concepts de base t'échappes
    Alex

    PS: Je suis en effet nouveau sur ce forum et sur la communauté Java de developpez.com. Si je suis ici aujourd'hui, c'est parce qu'on me l'a demandé. Je suis consultant en Java EE depuis plusieurs années. Spécialisé dans le développement d'applicatif Web. J'ai ma propre société et, avec l'aide de plusieurs personnes ici, nous essayons de fournir des applications de qualité à nos clients.
    Je donne des conférences à travers le monde sur le sujet depuis un an maintenant et c'est ainsi que j'ai rencontré deux personnes de java.développez.com qui m'ont demandé de participer à ce site. J'ai donc écris mon première article en français sur JPA le jour qui a suivit et tâche maintenant de cerner à qui ce dernier va s'adresser.
    Je compte en effet l'approfondir et poursuivre avec une série qui aurait plus ou moins cette allure:
    1. JPA dans un environnement Java SE
    2. JSF, FrontEnd au modèle de l'article JPA
    3. Intégration du tout avec Spring (tx, IoC, ...)


    Voilà tu sais maintenant la raison de mon implication. Je n'essaie pas de trouver une solution JavaEE à un problème.

  18. #18
    Membre éprouvé
    Inscrit en
    Juin 2006
    Messages
    94
    Détails du profil
    Informations forums :
    Inscription : Juin 2006
    Messages : 94
    Par défaut
    Bienvenue, je vais enfin pouvoir poser mes questions à un vrai consultant ...

Discussions similaires

  1. Accès aux données depuis une application web
    Par maserati dans le forum Persistance des données
    Réponses: 11
    Dernier message: 21/02/2012, 08h58
  2. Réponses: 3
    Dernier message: 24/01/2012, 12h36
  3. Réponses: 1
    Dernier message: 10/11/2011, 18h38
  4. Réponses: 11
    Dernier message: 16/12/2007, 00h48
  5. Sauvegarder une application Web-ASP et de ses données
    Par Piefire2 dans le forum Général Conception Web
    Réponses: 9
    Dernier message: 20/09/2007, 10h14

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