一、试验环境:
OS: Windows XP
Eclipse 3.4.2
JDK:1.6.0_10-rc2
二、所需软件
1、fscontext-1_2-beta3.zip:fscontext.jar,providerutil.jar
2、jdk版本低于Java 2 SDK, v1.3的,需要JNDI software
下载地址:https://cds.sun.com/is-bin/INTERSHOP.enfinity/WFS/CDS-CDS_Developer-Site/en_US/-/USD/ViewProductDetail-Start?ProductRef=7110-jndi-1.2.1-oth-JPR@CDS-CDS_Developer
三、试验内容
创建一个JDNI文件系统的Context;并在此Context种试验JNDI的各种方法。
四、试验步骤
(一)、搭建JNDI应用环境
1、创建一个工程,引入fscontext.jar,providerutil.jar
2、jdk版本低于Java 2 SDK, v1.3的,需映入JNDI 相关的jar文件
3、创建一个Java文件,编码:
Hashtable env = new Hashtable();
env.put(Context.INITIAL_CONTEXT_FACTORY,
"com.sun.jndi.fscontext.RefFSContextFactory");
//manually create the ROOT DIR
env.put(Context.PROVIDER_URL, "file:/D:/JNDI/");
try {
Context ctx = new InitialContext(env);
catch (NamingException e) {
e.printStackTrace();
}
(二)、试验JDNI应用
略
五、说明
1、在JNDI应用之前需要做的两个准备工作:JNDI software(jdk版本低于Java 2 SDK, v1.3时)、JNDI Server Provider software
2、步骤1中引入的两个jar包将作为JNDI Server Provider,类似的在MQ应用中,执行JMSAdmin相关命令也是创建一个JNDI Server Provider,详见《使用【WebSphere MQ JMS administration tool】工具创建JNDI命名空间》http://blog.csdn.net/huyangleng123。
3、参考文档:jndi-1_4_2-tutorial
(https://cds.sun.com/is-bin/INTERSHOP.enfinity/WFS/CDS-CDS_Developer-Site/en_US/-/USD/ViewProductDetail-Start?ProductRef=7110-jndi-1.2.1-oth-JPR@CDS-CDS_Developer)
六、About JNDI(此为个人理解,不对之处还望指正)
JNDI —— java naming and directory interface,是一组API.使用这组API可以创建和管理命名空间和相关的名字资源。
Naming Spacie —— 所谓的命名空间物理上可以理解为:一个映射了名字和对应对象(资源)内容的定义文件,此文件以.bindings为名;需要使用context对象对命名空间的各个命名进行操作。
Context —— 即所谓的上下文环境,由JNDI Server Provider创建和维护。
JNDI Server Provider —— JNDI服务提供方。也是一组API,他负责来对应的Context。 例如此试验用到的fscontext, 是一个文件系统JNDI Server Provider,它提供的com.sun.jndi.fscontext.RefFSContextFactory可用于创建JNDI的Context。
分享到:
相关推荐
JNDI是Java Naming and Directory Interface(JAVA命名和目录接口)的英文简写,它是为JAVA应用程序提供命名和目录访问服务的API(Application Programing Interface,应用程序编程接口)。
JNDI通常与Java应用程序服务器一起使用,帮助开发者在分布式环境中管理资源。 在JNDI中,命名服务允许程序将名字与对象关联起来,而目录服务则扩展了命名服务,添加了属性查询和分类功能。通过JNDI,开发者可以方便...
在Java应用程序中,JNDI允许开发者查找和绑定对象,这些对象可以是数据源、EJB、邮件服务器配置等。这个服务在分布式环境中尤其有用,因为它促进了组件之间的松耦合。 标题提到的"jndi所依赖的jar包"包括`fscontext...
5. **测试与调试**:部署应用后,进行功能测试以确保应用能正确地通过JNDI找到并使用资源。如果遇到问题,可以查看WebSphere的日志输出或使用管理控制台的诊断工具进行调试。 通过上述步骤,你可以在WebSphere上...
- **EJB引用**:在Java EE环境中,EJB组件可以通过JNDI查找彼此,或者被客户端应用程序查找。 ### 4. JNDI与LDAP的结合 LDAP是一种常用的目录服务,JNDI可以作为访问LDAP的客户端API。通过JNDI,我们可以搜索、...
### WebSphere 应用服务器部署、JNDI 配置与优化、IHS 部署详解 #### 一、WebSphere 应用服务器部署概述 WebSphere Application Server (WAS) 是 IBM 提供的一款高性能的企业级应用服务器,用于部署 Java EE 应用...
JNDI是一个服务提供者接口,允许应用程序通过名字查找和管理分布式环境中的对象。在Java EE环境中,JNDI通常用于在应用服务器中注册和查找数据源,以便应用程序能够方便地访问数据库。 在`oracle-ds.xml`文件中,...
使用这个工具,开发者可以更高效地管理应用服务器上的JNDI资源,从而提高开发效率,减少错误,并使得资源配置更容易维护。 总的来说,JNDI自动配置工具是Java开发者在部署和管理企业级应用时的重要辅助,它简化了...
JNDI的核心理念是将应用程序与特定的命名或目录服务解耦,使得开发者能够灵活地在不同环境中部署应用,无需更改代码。 标题中的"jndi-1_2_1.zip_jndi_jndi-1.2.1.jar"表明这是一个关于JNDI的版本1.2.1的开源软件包...
它能够帮助识别是否有可能受到Fastjson或Log4j RCE漏洞的影响,并在高版本JDK环境中进行测试,因为这些漏洞可能在特定JDK版本中更为严重。 使用"jndi_tool.jar"文件,用户可以运行这个工具,执行一系列的JNDI查找...
在Tomcat服务器中,JNDI的应用主要体现在其内置的JNDI实现——Tomcat JNDI,它允许开发者在应用中通过名称查找和使用资源,如数据源、环境变量等。本文将深入解析Tomcat 5.0中JNDI的工作原理,特别是`ContextBinding...
总结起来,这个压缩包提供了使用JNDI进行数据源管理所需的全部库文件,对于在WebSphere或其他支持JNDI的环境中开发和部署Java应用是必不可少的。正确理解和使用这些JNDI相关库,能够帮助开发者构建更加灵活和可扩展...
在实际应用中,一旦数据源被绑定到JNDI,其他部分的代码可以通过JNDI查找机制来获取并使用这个数据源。这通常涉及以下步骤:首先,创建一个新的`InitialContext`实例,然后调用`lookup()`方法,传入之前绑定的数据...
在实际应用中,开发者通常会使用`InitialContext`作为JNDI的入口点,通过构造函数传入环境属性来初始化上下文,并进行后续的查找或绑定操作。例如,查找名为“java:comp/env/jdbc/MyDataSource”的数据源: ```java...
JNDI允许Java应用程序查找和操作各种类型的资源,如数据源、对象服务、邮件服务器等,而无需知道这些资源的具体实现细节。JNDI在分布式环境中特别有用,因为它提供了一种统一的方式来定位和管理网络资源。 JNDI的...
- **初始上下文(Initial Context)**:它是进行JNDI操作的起点,通常用于创建上下文环境并初始化JNDI配置。 - **上下文(Context)**:表示JNDI树中的节点,可以包含对象或指向子节点的引用。 - **对象(Object)**...
通过查看源码,我们可以更深入地了解JNDI如何与应用服务器的其他组件协同工作,如怎样将配置信息映射到实际的对象,以及在高并发环境下如何保证资源查找和绑定的性能。 **JNDI与工具的结合** 许多开发工具和框架也...
例如,在J2EE应用中,开发者可以通过JNDI来查找并获取数据库连接池、消息队列、邮件服务等资源,而无需关心这些资源的具体实现和位置。这极大地简化了企业级应用的开发和部署过程,提高了系统的可伸缩性和可维护性。...