JavaWEB经验总结之JNDI技术深入学习

JavaWEB经验总结之JNDI技术深入学习

ID:37915259

大小:33.00 KB

页数:6页

时间:2019-06-02

JavaWEB经验总结之JNDI技术深入学习_第1页
JavaWEB经验总结之JNDI技术深入学习_第2页
JavaWEB经验总结之JNDI技术深入学习_第3页
JavaWEB经验总结之JNDI技术深入学习_第4页
JavaWEB经验总结之JNDI技术深入学习_第5页
资源描述:

《JavaWEB经验总结之JNDI技术深入学习》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、JNDI技术深入学习名词解释jndi是Java命名和目录接口(JavaNamingandDirectoryInterface,JNDI)的简称.从一开始就一直是Java2平台企业版(JEE)的核心技术之一。在JMS,JMail,JDBC,EJB等技术中,就大量应用的这种技术。为什么会有jndijndi诞生的理由似乎很简单。随着分布式应用的发展,远程访问对象访问成为常用的方法。虽然说通过Socket等编程手段仍然可实现远程通信,但按照模式的理论来说,仍是有其局限性的。RMI技术,RMI-IIOP技术的产生,使远程对象的查找成为了技术焦点。JNDI技术就应运而生。JNDI技术产生后,

2、就可方便的查找远程或是本地对象。JNDI的架构与实现JNDI的架构与JDBC的架构非常类似.JNDI架构提供了一组标准命名系统的API,这些API在JDK1.3之前是作为一个单独的扩展包jndi.jar(通过这个地址下载),这个基础API构建在与SPI之上。这个API提供如下五个包·····javax.namingjavax.naming.directoryjavax.naming.eventjavax.naming.ldapjavax.naming.spi在应用程序中,我们实际上只使到用以上几个包的中类.具体调用类及通信过程对用户来说是透明的.第1页/共8页JNDIAPI提供了

3、访问不同JNDI服务的一个标准的统一的实现,其具体实现可由不同的ServiceProvider来完成。前面讲的为第一层JNDIAPI层.最下层为JNDISPIAPI及其具体实现。图中所列的一些SPI可从http://java.sun.com/products/jndi/downloads/index.html下载.它包括了几个增强和下面的命名/目录服务提供者:······LDAP(LightweightDirectoryAccessProtocol)服务提供者CORBACOS(CommonObjectRequestBrokerArchitectureCommonObjectRMI

4、(JavaRemoteMethodInvocation)注册服务提供者DNS(DomainNameSystem)服务提供者.FSSP(FileSystemServiceProvider)文件系统服务提供者其它服务提供者Services)命名服务提供者中间层为命名管理层。其功能应该由JNDISPI来完成。上层为JNDIAPI,这个API包在Java2SDK1.3及以上的版本中已经包括。前面讲解的只是作为应用程序客户端的架构实现,其服务端是由SPI对应的公司/厂商来实现的,我们只需将服务端的相关参数传给JNDIAPI就可以了,具体调用过程由SPI来完成.JNDI工作原理下面通过一个示

5、例程序来说明JNDI工作原理(代码为自解释)./**Createdon2005-3-4**Tochangethetemplateforthisgeneratedfilegoto*Window>Preferences>Java>CodeGeneration>CodeandComments*/packagecom.sily.jndi;importjava.io.FileInputStream;importjava.util.Properties;importjavax.naming.Context;importjavax.naming.InitialContext;/***@auth

6、orshizy**Tochangethetemplateforthisgeneratedtypecommentgoto*Window>Preferences>Java>CodeGeneration>CodeandComments*/publicclassTestJbossJNDI{/****/publicTestJbossJNDI(){super();//TODOAuto-generatedconstructorstub}publicstaticvoidmain(String[]args){try{Propertiesenv=newProperties();//载入jboss的S

7、PI相关参数,包括初始上下文工厂,服务URL,等等env.load(newFileInputStream("jbossJndi.properties"));env.list(System.out);//通过JNDIapi初始化上下文InitialContextctx=newjavax.naming.InitialContext(env);System.out.println("Gotcontext");//createasubContextctx.createSubcontext

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。