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

Java EE Discussion :

Informations pour débuter [EJB3]


Sujet :

Java EE

  1. #1
    Membre éclairé Avatar de fab76000
    Profil pro
    Inscrit en
    Janvier 2008
    Messages
    311
    Détails du profil
    Informations personnelles :
    Localisation : France, Seine Maritime (Haute Normandie)

    Informations forums :
    Inscription : Janvier 2008
    Messages : 311
    Par défaut Informations pour débuter
    Bonjour a tous,

    J'aurais voulu savoir ou je peux trouver un document expliquant les ejb3 session et entity, ainsi que les paramètres tels que @remote ou @stateless...Etc.
    Je sais qu'il y a le livre proposé au début du forum mais il est en anglais, et j'aurais besoin d'une source en français. Si quelqu'un connait ça??
    J'en profite aussi pour vous demander, est-ce que quelqu'un peut me dire, sans trop rentrer dans les détails, juste au niveau technique, si les EJB3 ont des différences fondamentales avec les beans tout court???

    Merci d'avance.

  2. #2
    Membre très actif
    Profil pro
    Inscrit en
    Octobre 2008
    Messages
    205
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2008
    Messages : 205
    Par défaut
    Salut, lol !

    Pour ta deuxième question je sais pas !

    Pour les ejb3 entity, stateless etc remote et local ....

    Je peux te donner une breve explication, le plus simple possible... :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
    @Entity
    public class MyEntity implements Serializable{
      @Id
      private int id;
      private String name;
    .....
    }
    Ce bref exemple est une "entité", un objet dont tu veux garder les instances dans une bases de données...
    Donc par exemple tu peux avoir une entité "Personne","Voiture","Produit" ...
    Ca revient à faire une BD en java ... tu definit le nom de ta table par ton nom de class, l'id (necessaire pour les entity) par l'annotation "@Id", et les colonnes en definissant tes attributs de classes classiques "private String name","private int quantity" etc ...

    C'est ce qu'on appelle la persistence et donc c'est à utiliser avec les Classes dont tu voudrais stocker les données ...

    Pour Session (stateful ou stateless) : C'est simple, un bean facade ou session, te permets d'acceder et de realiser des operations sur tes "entity" , exemple :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     
    @Stateless
    @Local
    public class AccessToMyEntityBean implements AccessToMyEntity{
      public String getMyEntityName(MyEntity entity){
        return entity.getName();
      }
    ...
    }
    En supposant que les getters & setters des attributs sont definis dans la class MyEntity ...

    Il faut bien sur avoir au préalable definit une interface AccessToMyEntity
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    public interface AccessToMyEntity {
      String getMyEntityName(MyEntity entity);
    }
    Donc au final, le bean session ou facade permet seulement d'etre un intermediaire entre un client et ton bean Entity, c'est une organisation architecturale permettant de faire du code propre...

    apres @Stateless Vs @ statefull : stateless n'a pas d'etat, la facade le caracterisant ne contient pas d'attribut qui change au cours du temps.

    statelfull peut avoir un etat....

    Si ta facade session n'a pas d'attribut, elle est surement stateless...

    Si ta facade sesssion a un attribut, elle est surement statefull, imaginons la facade "Panier" avec l'entity "Produit" :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
     
    @statefull
    @Local
    public class Panier implements "SonInterface" {
      private int MontantDuPanier;
    .......
    ......
      public ajouterProduitAuPanier(Produit p){// Produit est definit comme Entity
        MontantDuPanier+=MontantDuPanier+p.getPrix();
    ....
    Ici, tu as donc une facade session "panier" qui est statefull, car elle à un état qui vari (private int MontantDuPanier) au cours du temps ....

    Enfin @Local Vs @Remote definit la maniere par laquelle tu accede a ton bean session ou facade depuis ton client ...

    Local pour un access local, remote pour un acces distant ...
    @Remote est souvent utilisé par les clients lourds ...
    alors que @Local est plutôt utilisé par les servlets ...

    Mais c'est un exemple et non une regle générale.

  3. #3
    Membre Expert Avatar de nathieb
    Homme Profil pro
    DevOps
    Inscrit en
    Mai 2004
    Messages
    1 058
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 58
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : DevOps
    Secteur : Service public

    Informations forums :
    Inscription : Mai 2004
    Messages : 1 058
    Par défaut Bonjour livre,
    Bonjour,

    Je te conseille deux livres que j'ai vraiment apprécié en français d'abord, pour commencer après en anglais c'est the must ...

    EJB 3 chez DUNOD Labo sup Info
    Et celui d'antonio goncalves.

    après y'a rien de mieux qu'a la maisonn donc direction sun en ligne et sa doc in english

    Olivier

  4. #4
    Membre éclairé Avatar de fab76000
    Profil pro
    Inscrit en
    Janvier 2008
    Messages
    311
    Détails du profil
    Informations personnelles :
    Localisation : France, Seine Maritime (Haute Normandie)

    Informations forums :
    Inscription : Janvier 2008
    Messages : 311
    Par défaut
    Je vous remercie pour vos informations, elles me sont bien utiles.
    Merci encore.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Quel logiciel (EDI) pour débuter en programmation ?
    Par mimosa69 dans le forum Débats sur le développement - Le Best Of
    Réponses: 13
    Dernier message: 17/01/2016, 16h45
  2. Débat : quelle distribution Linux choisir pour débuter ?
    Par Anonymous dans le forum Distributions
    Réponses: 227
    Dernier message: 18/02/2015, 10h09
  3. Informations pour débuter en traitement d'image niveau Mathematiques
    Par Invité dans le forum Traitement d'images
    Réponses: 9
    Dernier message: 25/01/2013, 23h42
  4. Information pour débuter
    Par Asmod_D dans le forum OpenSceneGraph
    Réponses: 2
    Dernier message: 09/06/2009, 10h30
  5. Réponses: 2
    Dernier message: 23/11/2007, 09h50

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