Preferences API使用多个ClassLoader?

时间:2013-07-19 07:57:25

标签: java preferences

我目前正在使用Preferences API来保存Vaadin应用程序中的设置。 该应用程序在Tomcat服务器上运行3个WebApp。 据我所知,Tomcat服务器上运行的每个模块都有一个ClassLoader,但它都在一台虚拟机中运行。

有人可以向我解释为什么Java Preferences正在处理多个ClassLoader吗?我找不到任何来源,我没有通过调试找到任何东西。

非常感谢你。

1 个答案:

答案 0 :(得分:0)

我找到了答案:

通过调用:

获得Preferences-object
Preferences prefs = Preferences.userRoot().node("test);

Preferences和PreferencesFactory由Bootstrap ClassLoader加载,因此对于每个模块(how ClassLoader work in Apache)都是相同的,并且因为该对象是在PreferencesFactory中创建的,所以它不是在WebApp上下文中创建的。