Veamos. Si las variables las declaras en el servlet, pero no estáticas, no se machacan nunca, ya que el servidor web ejecuta el mismo servlet en threads diferentes y por tanto crea un instancia en memoria diferente para esas variables.
Si las declaras estáticas la zona de memoria es siempre la misma y por tanto se machacan unas a otras.
Es decir:
Opción 1: Declarar las variables como private pero no estáticas dentro del servlet y no te preocupes que aunque el servlet se ejecute 25 veces simultáneamente no se machacaran.
Opción 2: Declarar las variables estáticas. Entonces sí se machacaran unas a otras, y para evitar eso tienes que crear el servlet implementando la interfaz SingleThreadModel, que produce que el servidor web (la máquina virtual java en realidad) solo ejecute un servlet a la vez, es decir no utiliza threads, y por tanto las variables estáticas no se machacaran. Para crear un servlet de esta manera lo tienes que hacer asi:
public class Servlet1 extends HttpServlet implements SingleThreadModel
{
}
Espero haberte sido de ayuda.