Die kurze Antwort auf diese Frage ist nein. Ich kenne keinen Anwendungsserver, der sich so verhält. Es gibt jedoch einige Dinge, auf die hingewiesen werden sollte. Es folgt eine vereinfachte Erklärung:
Wenn Ihr Anwendungsserver (dh JBoss w/Tomcat) gestartet wird, lädt er einige Klassen in einem Klassenlader, die von allen Anwendungen gemeinsam genutzt werden. Wenn die Anwendung bereitgestellt wird, lädt sie diese Klassen in ihren eigenen Klassenlader. Wenn Sie Ihre Anwendung deimplementieren, werden der Klassenlader und alle zugehörigen Klassen unbemerkt gesammelt. Wenn die Anwendung erneut bereitgestellt wird, werden alle Ihre Klassen neu geladen, und Ihre Singletons werden erneut installiert.
Ihre Anwendung wird sich (theoretisch, atleast) nach einer erneuten Bereitstellung wie nach einem JVM/Application Server-Neustart gleich verhalten.
Noch ein letzter Tipp: Wenn Sie das Singleton-Muster in Ihrer Unternehmens-Java-Anwendung verwenden möchten, müssen Sie die Einschränkungen von Singleton-Objekten in einer Anwendungsserverumgebung kennen. Sie können Probleme feststellen, wenn Sie beispielsweise Ihre Anwendung clustern möchten.