Visualizzazione dei risultati da 1 a 4 su 4
  1. #1
    Utente di HTML.it
    Registrato dal
    Feb 2007
    Messaggi
    10

    chiusura connessione al db

    salve a tutti,
    ho il seguente problema le connessione, fatte nel metdo init(), delle varie servlet restano sempre aperte. Nonstante ì nel metodo destroy di ognuna di esse io distrugga sia la sessione che la connessione.
    Nell'altra discussione mi è stato fatto presente che tomcat invoca il metodo destroy() solo quando vengono manualemnte fermate le servlet.
    Volevo sapere qualche modo per temporizzare la durata di una connessione e magari anche della sessione, poichè essendo anche questa un'operazione da me eseguita nel destroy() non dredo che venga eseguita.

    Grazie a tutti

  2. #2
    Utente di HTML.it L'avatar di nether
    Registrato dal
    Dec 2006
    Messaggi
    376
    solitamente le connessioni al db si chiudono in una servlet filtro, non nel destroy, per i motivi che hai detto tu.

    codice:
    public void doFilter(ServletRequest request, ServletResponse response, FilterChain filterChain)
            throws IOException, ServletException {
        filterChain.doFilter(request, response);
    
        //chiudi la connessione
       ... (non so che sistema usi per la persistenza dei dati)
    }

  3. #3
    Utente di HTML.it
    Registrato dal
    Feb 2007
    Messaggi
    10
    ti ringrazio per evermi risposto, vorrei chiederti di essere un poco più esaustivo perchè non ho capito dove va ad inderire la servlet filtro.

  4. #4
    Utente di HTML.it L'avatar di nether
    Registrato dal
    Dec 2006
    Messaggi
    376
    scusa, senza nessuna offesa di nessun tipo, pero' non ho il tempo di mettermi a spiegare da zero cos'e' una servlet filtro. Ti do' un input in termini di "passi da eseguire" affinche' tutto funzioni. Su ogni passo fai una ricerca sul forum o su google, ci sono centinaia di pagine al riguardo. Se poi hai qualsiasi tipo di domanda relativa ad uno step specifico, saro' felice di aiutarti.

    1- capire (a livello logico) cos'e' una servlet filtro e come si inserisce nella filter chain
    2- scrivere la classe rappresentativa della tua servlet filtro (banalissimo: basta implementare l'interfaccia javax.servlet.Filter)
    3- inserire nella classe che hai appena scritto la logica di chiusura della connessione attiva (questa e' la parte piu' ""difficile"".. dipende strettamente da come gestisci le connessioni in generale: cosa usi, come le apri)
    4- mappare la tua servlet filtro nel file web.xml, in modo che sia eseguito alla chiamata di un particolare url pattern

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.