Is a static member of a class present as only a single instance per process or thread? Meaning does each thread has its own copy of the static member variable of the class?
There is one copy of static
variable per class-loader that loaded this class. This more-or-less means per-process, however you need to be aware of the difference.
E.g. when two web-apps have the same class bundled, the class will be loaded twice, thus having two copies of the same static
field.
If you need a variable having independent value on a thread basis, have a look at ThreadLocal.