我目前正在使用Preferences API来保存Vaadin应用程序中的设置。 该应用程序在Tomcat服务器上运行3个WebApp。 据我所知,Tomcat服务器上运行的每个模块都有一个ClassLoader,但它都在一台虚拟机中运行。
有人可以向我解释为什么Java Preferences正在处理多个ClassLoader吗?我找不到任何来源,我没有通过调试找到任何东西。
非常感谢你。
答案 0 :(得分:0)
我找到了答案:
通过调用:
获得Preferences-objectPreferences prefs = Preferences.userRoot().node("test);
Preferences和PreferencesFactory由Bootstrap ClassLoader加载,因此对于每个模块(how ClassLoader work in Apache)都是相同的,并且因为该对象是在PreferencesFactory中创建的,所以它不是在WebApp上下文中创建的。