JNDI使用Thread上下文类加载器。 因为它的内容是由rt.jar中的bootstrap类实现的 但核心JNDI类可能会加载由独立供应商实现的JNDI提供程序,并可能部署在应用程序的类路径中。 父类加载器不能使用子类加载器来加载类。
问题: 众所周知,父代表团模型是一个重要特征, 为什么不到处使用系统类加载器?子类加载器可以使用父类加载器来加载类。
答案 0 :(得分:1)
我不完全确定我理解你的问题。
特别是在JEE运行时环境中,当前线程的Context Classloader是您的最佳选择。
基本上它都归结为层次结构(甚至可能是倒置的或者在某处使用像OSGI这样的东西)以及关于你所在的类加载器层次结构中实际所在位置的缺失知识。
一般来说,多个类加载器是必需的,因为它有时需要具有相同类的不同版本,p.ex。在同一JVM上运行的不同应用程序中。