随笔-0  评论-0  文章-24  trackbacks-0
JNDI英文全称是:Java Naming and Directory Interface,Java命名与目录接口。JNDI提供统一的客户端API,通过不同的访问提供者接口JNDI SPI的实现,由管理者将JNDI API映射为特定的命名服务和目录系统,使得Java应用程序可以和这些命名服务和目录服务之间进行交互。JNDI是把 J2EE 应用程序合在一起的粘合剂,但还没有紧到无法让人很容易地把它们分开并重新装配。JNDI 提供的间接寻址允许跨企业交付可伸缩的、功能强大且很灵活的应用程序。
JNDI程序包:
javax.naming:命名操作;
javax.naming.directory:目录操作;
javax.naming.event:在命名目录服务器中请求事件通知;
javax.naming.ldap:提供LDAP支持;
javax.naming.spi:允许动态插入不同实现。

本文的目的只是对JNDI有一个基本的认识,通过一个简单的实例来了解其使用,在日后的学习中会经常用到(诸如EJBs、JMS、JDBC 2.0以及IIOP上的RMI通过JNDI来使用CORBA的命名服务)。
记得在classpath里加上两个可以访问文件系统的jar:fscontext.jar和providerutil.jar。
public class JNDITest {

    
public static void main(String[] args) {

        String name 
= "C:\\";
        Hashtable
<String, String> env = new Hashtable<String, String>();
        env.put(Context.INITIAL_CONTEXT_FACTORY,
                
"com.sun.jndi.fscontext.RefFSContextFactory");

        
try {
            
// Create the initial context
            Context ctx = new InitialContext(env);
            
// Look up an object
            Object obj = ctx.lookup(name);
            
// Print it
            System.out.println(name + " is bound to: " + obj);

        } 
catch (NamingException e) {
            System.err.println(
"Problem looking up " + name + "" + e);
        }
    }
}

运行结果:
C:\ is bound to: com.sun.jndi.fscontext.RefFSContext@691f36
找到了我的C盘。。。
源代码和jar文件下载
posted on 2009-06-07 23:21 chenkkkabc 阅读(118) 评论(0)  编辑  收藏 所属分类: J2EE

只有注册用户登录后才能发表评论。


网站导航: