命名和目录服务是计算的基础。命名服务是一种有用的工具,可编程的任何东西----文件/打印机/文件服务器等都是通过它与名字相匹配的。引用本地打印机的端口,不可能在打印机上打印,但可以通过引用它的名字做到这一点。OS中的命名服务就是把I/O端口与打印机的名字相匹配。
目录服务的命名服务的扩展,允许命名服务的入口具有特性。现在再回到打印机的例子中,该打印机有可能具有一定的特性,比如颜色/能够打印双面等,所有这些属性保存在目录服务中,并与一个打印机对象相关联。普通的目录服务有:NIS/NIS+/Microsoft Active Directory以及.......等的LDAP目录服务。
目录服务即:一种扩展的命名服务,能够把属性和名字同技术组件相联系。
通讯录就是一种目录服务,把人和名字相联系起来,并能够得到人的一些其他信息(属性)
在JDBC中,使用了JNDI,就需要放弃Driver和DriverManager类。
(JDBC连接池化也需要JNDI的支持)
命名与目录服务的共同地方是能够把各种技术组件同名字联系起来,文件系统将大量数据与文件名相联系,而无需知道其在硬盘的物理位置,文件系统会把人们所理解的名字映射到硬盘的一个物理位置上。