JNDI特性总结

来源:互联网 发布:java.exe自动关闭 编辑:程序博客网 时间:2024/06/11 03:13

1.JNDI只是一个框架,和JDBC是类似的,没有实际内容,具体干活的都是各种实现JNDI SPI的服务提供者,这点和JDBC的各种数据库驱动是类似的。

2.Java自带了一些服务提供者,大都放在com.sun.jndi.xxx包下面。

3.JNDI是一个桥梁,用来连接Java应用程序和其他一些应用之间协同工作,提供统一的调用和管理接口。这里的“其他一些应用”还是有一定特性要求的,也就是Naming或者Directory,即JNDI中的N和D。这些应用使用的技术有一些本来就是Java相关的,比如,RMI,JDBC,而大部分都是Java无关的技术,比如DNS,LDAP,CORBA,还有文件系统,这些系统都有一个共同特性,要么是Naming的,要么是Directory的。当然,还可以不断扩展,只要能被抽象成Naming或者Directory的都行。

4.JNDI自身并不区分客户端和服务器端,也不具备远程能力,但是被其协同的一些其他应用一般都具备远程能力,JNDI在其他客户端和服务器端都能够进行一些工作,客户端上主要是进行各种访问,查询,搜索,而服务器端主要进行的是帮助管理配置,也就是各种bind。比如在RMI服务器端上可以不直接使用Registry进行bind,而使用JNDI统一管理,当然JNDI底层应该还是调用的Registry的bind,但好处JNDI提供的是统一的配置接口,你把RMI换成其他的也应该不陌生。

5.继续补充一下第4点,“JNDI服务器端”这种说法是错误的,就像你说JDBC服务器端一样是错误的,这种说法本身是会误导人们去理解JNDI真正是个什么东西。


<script type="text/javascript"><!--google_ad_client = "ca-pub-1944176156128447";/* cnblogs 首页横幅 */google_ad_slot = "5419468456";google_ad_width = 728;google_ad_height = 90;//--></script><script type="text/javascript" src="http://pagead2.googlesyndication.com/pagead/show_ads.js"></script>
原创粉丝点击