请告诉我应该在哪里使用LDAP JNDI以及FileSystem JNDI。我也想知道每种情况下Context.PROVIDER_URL的值应该是什么。
在哪里可以找到“com.sun.jndi.ldap.LdapCtxFactory”的源文件
和
com.sun.jndi.fscontext.RefFSContextFactory(INITIAL_CONTEXT_FACTORY)两个类。
谢谢你
答案 0 :(得分:3)
解释JNDI的最简单方法就是举例。
在互联网发布之前的几天,如果你想打电话给某人,你必须在电话簿中找到他们的号码。这个查找实际上有两个部分,1)找到合适的电话簿,2)在那本书中找到该人的号码。
使用JNDI就像在电话簿中发布电话号码一样。发布者必须插入名称和编号,以便搜索。客户需要找到正确的书籍然后检索号码。
[前互联网示例]
假设你想问一个你从学校认识的人,但你不知道电话簿的位置。你需要问妈妈。妈妈是上下文提供者。
维护应用程序服务器的任何人都可以添加JNDI条目。他们还提供Provider_URL。
现在,关于LDAP与FileSystem的问题。大公司通常使用LDAP来存储有关其员工的信息,例如医疗大楼大厅中的列表(目录)。
FileSystem就像网络上的文件共享一样。它们可能在服务器之间进行物理移动,但您希望客户端仍能够找到它们。您发布了一个共享名称“\ LUNCHSCHEDULE”,它允许人们在不知道其实际位置的情况下连接到它。 FileSystem提供程序将配置物理映射。客户端必须告知ProviderURL以获取管理员需要提供的FileSystem提供程序。
答案 1 :(得分:2)
尝试使用this link作为源代码(以HTML格式)或以其他方式获取OpenJDK的sources。
你当然可以尝试google在JNDI上找到一些文档:)
关于LDAP是什么,它就像电话簿。公司通常使用LDAP服务器来创建具有部门,子部门和其中的个人的树。然后,您可以轻松找到合适的人,他的电子邮件,地址和类似的东西。 Outlook通讯簿可以是例如LDAP服务器。 Microsoft的Active Directory很大程度上是LDAP服务器。
LDAP服务器已针对树状结构中的快速搜索进行了优化。如果查看LDAP dn(专有名称),每个逗号都会给出一个分支点。与作为编程结构的典型树形成对比,LDAP分支点可以分支到几乎无限量的分支(如果您想到公司,单个公司,根节点,可能有一些董事会,每个董事会可以有一些部门,等等。人们会在最低层。)