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

Servlets/JSP Java Discussion :

[servlet]récupérer la session


Sujet :

Servlets/JSP Java

  1. #1
    Membre averti
    Inscrit en
    Juin 2004
    Messages
    53
    Détails du profil
    Informations forums :
    Inscription : Juin 2004
    Messages : 53
    Par défaut [servlet]récupérer la session
    Bonjour,
    dans la méthode doPost de ma servlet, je créé une session en faisant
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    HttpSession session = request.getSession(true);
    ca marche très bien, mais je voudrais faire autrement, c'est-à-dire récupérer ma session dans la méthode init() de ma servlet
    seulement, je n'y parviens pas puisque je n'ai pas l'objet "request" nécessaire.
    est-ce qu'il y aurait un autre moyen de le faire ?
    merci

  2. #2
    Membre expérimenté

    Avatar de christopheJ
    Profil pro
    Inscrit en
    Avril 2004
    Messages
    1 600
    Détails du profil
    Informations personnelles :
    Âge : 49
    Localisation : France, Indre et Loire (Centre)

    Informations forums :
    Inscription : Avril 2004
    Messages : 1 600
    Par défaut
    J'ai du mal a comprendre pourquoi recupérer la session dans la méthode init...
    Cette méthode n'est exécutée qu'une fois à l'instanciation de la servlet. A ce moment la servlet n'a eu aucune requete donc pas de session.
    Peux-tu donner plus de détails sur ce que tu cherches dans la session?

  3. #3
    Membre averti
    Inscrit en
    Juin 2004
    Messages
    53
    Détails du profil
    Informations forums :
    Inscription : Juin 2004
    Messages : 53
    Par défaut
    en fait, dans ma session, je transmet l'objet de connexion a la base de données. si je pouvais récupérer cet objet dans la méthode init(), je pourrais ainsi créer mes statement une fois pour toutes, et ne pas les recréer à chaque fois dans le doPost, ce qui serait un gain de temps considérable

  4. #4
    Membre chevronné
    Profil pro
    Inscrit en
    Avril 2003
    Messages
    509
    Détails du profil
    Informations personnelles :
    Âge : 46
    Localisation : France

    Informations forums :
    Inscription : Avril 2003
    Messages : 509
    Par défaut
    Peut etre que tu pourrais initialiser ta connexion a la base en statique

  5. #5
    Membre expérimenté

    Avatar de christopheJ
    Profil pro
    Inscrit en
    Avril 2004
    Messages
    1 600
    Détails du profil
    Informations personnelles :
    Âge : 49
    Localisation : France, Indre et Loire (Centre)

    Informations forums :
    Inscription : Avril 2004
    Messages : 1 600
    Par défaut
    Il faut que dans ton doPost() tu fasses :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    HttpSession session = request.getSession();
    Le true fais que tu créés forcément la session.
    Sans parametre tu récupères la session, ou en créer une si elle n'existe pas.
    http://java.sun.com/products/servlet...ssion(boolean)

  6. #6
    Expert éminent
    Avatar de adiGuba
    Homme Profil pro
    Développeur Java/Web
    Inscrit en
    Avril 2002
    Messages
    13 938
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Java/Web
    Secteur : Transports

    Informations forums :
    Inscription : Avril 2002
    Messages : 13 938
    Billets dans le blog
    1
    Par défaut
    Citation Envoyé par deldin
    en fait, dans ma session, je transmet l'objet de connexion a la base de données. si je pouvais récupérer cet objet dans la méthode init(), je pourrais ainsi créer mes statement une fois pour toutes, et ne pas les recréer à chaque fois dans le doPost, ce qui serait un gain de temps considérable
    Une session est associé à un utilisateur donc tu ne peut y acceder dans la méthode init().
    De plus, comme les Servlet sont multi-thread, le fait d'utiliser un seul Statement risque de poser des problème de conflit... a moins que tu ne parsème le code de synchonized mais du coups il risque d'y avoir une perte de temps !!!

    Lorsque tu parles de perte de temps, tu veux parler à quel niveau ? A l'execution ou à la saisie du code ?
    Je ne pense pas qu'il y aurait un gain de temps significatif à l'execution...

    a++

  7. #7
    Membre expérimenté

    Avatar de christopheJ
    Profil pro
    Inscrit en
    Avril 2004
    Messages
    1 600
    Détails du profil
    Informations personnelles :
    Âge : 49
    Localisation : France, Indre et Loire (Centre)

    Informations forums :
    Inscription : Avril 2004
    Messages : 1 600
    Par défaut
    Ce qui consomme du temps c'est la création de l'objet Connection à chaque fois.
    Ce que tu peux faire c'est faire gérer un pool de connexion à Tomcat. J'ai posté des infos dans la FAQ en construction :
    http://www.developpez.net/forums/viewtopic.php?t=88606

  8. #8
    Membre averti
    Inscrit en
    Juin 2004
    Messages
    53
    Détails du profil
    Informations forums :
    Inscription : Juin 2004
    Messages : 53
    Par défaut
    merci a tous
    la perte de temps que je cherche a éliminer correspond a la création de l'objet connection
    merci christopheJ, j'ai obtenu ce que je voulais grâce au pool de connection géré par Tomcat, ce qui réduit considérablement le temps de mes pages, puisque la création de l'objet connection me faisait perdre pres d'un seconde à chaque appel à une servlet !

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

Discussions similaires

  1. Réponses: 16
    Dernier message: 29/05/2016, 19h45
  2. [servlet] Récupérer des infos sur le client
    Par kenito dans le forum Servlets/JSP
    Réponses: 4
    Dernier message: 07/09/2005, 18h08
  3. [Servlet - JSP] bean session sous was
    Par piwai dans le forum Servlets/JSP
    Réponses: 3
    Dernier message: 08/08/2005, 10h00
  4. [Tomcat - Servlet] Récupérer l'heure et la date
    Par david71 dans le forum Tomcat et TomEE
    Réponses: 2
    Dernier message: 01/02/2005, 15h46
  5. [Servlet] récupérer les champs d'une jsp
    Par phoebe dans le forum Servlets/JSP
    Réponses: 8
    Dernier message: 12/05/2004, 16h32

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