2013-07-09 11 views
11

Le variabili statiche java sono condivise su tutte le sessioni utilizzando la stessa webapp o ogni sessione ottiene la propria versione delle variabili statiche?Tomcat: Java Variabile statica, applicazione o sessione larga?

Per dirla in altro modo, Tomcat ha creato un nuovo set di classi per ogni sessione o un solo set per l'intera app Web?

+0

statica sono di classe a livello, saranno creati solo quando il titolare classe viene caricata .. non appartengono agli oggetti – nachokk

+0

Cosa fate voi significa per sessione? Una sessione HTTP? Questo è solo un oggetto, non ha nulla a che fare con variabili statiche/caricamento di classi. –

+0

Penso che intendessero la richiesta piuttosto che la sessione – malhal

risposta

14

Tomcat crea uno ClassLoader per ogni applicazione Web, ovvero file di guerra o contesto. Quindi ogni Class viene caricato una volta per l'applicazione Web. Pertanto le variabili statiche sono condivise tra più sessioni e richieste.

Riferimenti:

3

Le variabili statiche sono condivise tra le sessioni. Fare attenzione all'utilizzo di variabili statiche.

Problemi correlati