NicXen
NicXen

Reputation: 143

Tomcat: Java Static Variable Scope, Application or session wide?

Are java static variables shared across all sessions using the same webapp or does each session gets its own version of the static variables?

To put it another way, do Tomcat created a new set of classes for each session or just one set for the whole web app?

Upvotes: 13

Views: 8161

Answers (2)

nif
nif

Reputation: 3442

Tomcat creates one ClassLoader for each web application, i.e. war-File or context. So every Class is loaded once for the web application. Therefore static variables are shared across multiple sessions and requests.

References:

Upvotes: 16

Heejin
Heejin

Reputation: 4571

Static variables are shared across the sessions. Be careful of using static variables.

Upvotes: 3

Related Questions