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

Développement Web en Java Discussion :

Instances d'objets, quelle portée ? Besoin de clarification


Sujet :

Développement Web en Java

  1. #1
    Membre habitué
    Homme Profil pro
    Développeur Java
    Inscrit en
    Avril 2007
    Messages
    375
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Loir et Cher (Centre)

    Informations professionnelles :
    Activité : Développeur Java
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2007
    Messages : 375
    Points : 154
    Points
    154
    Par défaut Instances d'objets, quelle portée ? Besoin de clarification
    Bonjour,

    Je vais essayer de poser un probleme pour expliquer ce que je veux savoir.

    Deux personnes se connectent a une servlet (meme site).
    Si on implemente un pattern singleton.
    public class SingletonObject
    {
    private SingletonObject()
    {
    // no code req'd
    }

    public static SingletonObject getSingletonObject()
    {
    if (ref == null)
    // it's ok, we can call this constructor
    ref = new SingletonObject();
    return ref;
    }

    private static SingletonObject ref;
    }

    Les deux servlets veulent recuperer le singleton.

    Servlet1:
    obj1 = SingletonObject.getSingletonObject();

    Servlet2:
    obj2 = SingletonObject.getSingletonObject();

    Au final, obj1 est la meme instance qu'obj2 ?

    C'est un truc que j'arrive pas a visualiser... Est-ce que c'est partagé entre toutes les servlets (commun au serveur donc) ou est-ce que chaque servlet creera ses propres instances...



    Autre question, liée au meme probleme.
    Je veux qu'une variable unique soit accessible par plusieurs client se connectant au site. C'est possible ?
    C'est un peut le probleme inversé.


    J'espere avoir été clair. Et désolé pour les accents, clavier qwerty
    Hesitez pas a demander des clarifications si vous comprenez pas ou je veux en venir.

    Merci d'avance !


    Edit: (J'ai eu une idée !)
    Si on passe par RMI, on a accès aux mêmes instances ou non ?

  2. #2
    Membre actif Avatar de Jacobian
    Inscrit en
    Février 2008
    Messages
    425
    Détails du profil
    Informations forums :
    Inscription : Février 2008
    Messages : 425
    Points : 245
    Points
    245
    Par défaut
    pour la première question de ta réponse :
    - chaque servlet a une instance du singleton
    - Si tu veux des variables commun a l'enssemble des users il te faut les stocker dans l'objet session que tu récupère de cette manière :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    HttpSession session = request.getSession(true);

  3. #3
    Membre habitué
    Homme Profil pro
    Développeur Java
    Inscrit en
    Avril 2007
    Messages
    375
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Loir et Cher (Centre)

    Informations professionnelles :
    Activité : Développeur Java
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2007
    Messages : 375
    Points : 154
    Points
    154
    Par défaut
    OK, bon a savoir, merci.
    C'est une bonne pratique, ou a éviter de stocker des choses dans la session ?

    J'attends d'autres retours, notament par rapport a RMI.

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

Discussions similaires

  1. Réponses: 8
    Dernier message: 16/02/2007, 15h55
  2. Besoin de clarification concernant les formulaires
    Par SavageMessiah dans le forum Langage
    Réponses: 6
    Dernier message: 05/01/2007, 01h24
  3. [1.1] Comment lister l'ensemble des instance d'objets en cours ?
    Par maitrebn dans le forum Framework .NET
    Réponses: 2
    Dernier message: 25/09/2006, 13h48
  4. [D2006] - C# ou Pascal Objet - Quelle différence
    Par RamDevTeam dans le forum Delphi .NET
    Réponses: 15
    Dernier message: 10/03/2006, 01h07
  5. Quelle ports de communication sont libres?
    Par Orionmel dans le forum Développement
    Réponses: 6
    Dernier message: 07/09/2004, 16h24

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