zoukankan      html  css  js  c++  java
  • J2EE技术(一)——JNDI

     一、JNDI基本思想

    JNDI(Java Naming & Directory Interface)即java的命名和目录接口。为开发人员提供了查找和访问的各种命名和目录服务的通用、统一方式。构建在DNS,LDAP等服务之上。

    命名服务提供一种绑定服务,即映射标识符到实体或对象。例如DNS——域名系统 (Domain Name System)就是一种命名服务。有了DNS,可以把容易记忆的名字www.baidu.com与IP地址202.108.22.5联系起来,在访问百度网站时只需要在地址栏中输入www.baidu.com即可。

    目录服务可以简单的理解为特殊的命名服务,目录服务本质上也提供命名服务,只不过在建立名字到实体的映射时还可以设置更多的属性。

    一个使用JNDI命名服务的程序可以分为四层:Java应用程序、JNDI API、JNDI命名管理器,以及不同的命名服务。对于使用命名服务的客户端而言,可以通过统一的接口访问不同的名字服务,这就是JNDI。

    JNDI体系架构

    通过JNDI体系结构可以看出JNDI命名服务是把RMI、CORBA、LDAP等现有命名服务进行封装,对用户提供统一的接口,大大简化了客户端使用命名服务的复杂度。

    二、JNDI优点

         1、只需要学习单一的API就可以访问各种目录服务信息。

         2、将应用程序与协议和实现细节隔离开。

    3、可以连接不同类型的目录服务器。

    三、JNDI在J2EE应用开发中的主要用途

         1、获取Web应用程序的资源引用。

         2、获取EJB对象。

         3、获取JMS对象。

         4、获取数据源对象。

         注:不要将JNDI当做数据库使用:1、JNDI对象存储在内存中;2、访问JNDI对象与网络性能有关。

    三、JNDI API包含的5个包

         1、javax.naming:包含访问命名服务的类和接口。

         2、javax.naming.event: 包含在命名服务中实现事件通知机制的类与接口。

         3、javax.naming.ldap: 包含支持LDAP v3扩展和控制的类与接口。

         4、javax.naming.spi:为服务提供商提供的接口,一般用户不会涉及。

         5、javax.naming.directory:包含访问目录服务的类与接口。

    四、JNDI树

  • 相关阅读:
    解决Win8设置为快速启动后ubuntu不能访问win下磁盘的方法
    Why Not Specialize Function Templates?
    Build your first web service with PHP, JSON and MySql
    本地开发与linux服务器端的文件传输
    数据库设计中一对多的解决方法.
    C++ 模板练习摘要
    Understanding ASP.NET Validation Techniques
    我的sublime text 个人设置
    Eclipse 快捷键
    数字图像处理
  • 原文地址:https://www.cnblogs.com/CharmingDang/p/9663970.html
Copyright © 2011-2022 走看看