打开APP
userphoto
未登录

开通VIP,畅享免费电子书等14项超值服

开通VIP
搭建JNDI应用环境并试验JDNI
一、试验环境:
Windows XP
Eclipse
JDK1.6.0_23-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
3、jdk1.3以上包含 了jndi公共接口
三、试验内容
创建一个JDNI文件系统的Context;并在此Context种试验JNDI的各种方法。
四、试验步骤
(一)、搭建JNDI应用环境
1、创建一个工程,引入fscontext.jar,providerutil.jar
2、jdk版本低于Java 2 SDK, v1.3的,需映入JNDI 相关的jar文件
(二)、创建一个Java文件,编码:
Java代码
import java.util.Hashtable;
import javax.naming.Context;
import javax.naming.InitialContext;
import javax.naming.NameClassPair;
import javax.naming.NamingEnumeration;
import javax.naming.NamingException;
/**
* @author Administrator
*
*/
public class JndiTest {
/**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
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://");
try {
Context ctx = new InitialContext(env);
ctx.createSubcontext("sylilzy");
NamingEnumeration list = ctx.list("/");
while (list.hasMore()) {
NameClassPair nc = (NameClassPair) list.next();
System.out.println(nc);
}
} catch (NamingException e) {
e.printStackTrace();
}
}
}
(三)、Run As-> Java Application
结果如下:
apache-tomcat-6.0.30: javax.naming.Context
jndi.jar: java.io.File
JndiTest1.class: java.io.File
JndiTest1.java: java.io.File
My Documents: javax.naming.Context
PPDownload: javax.naming.Context
RECYCLER: javax.naming.Context
Resolve.class: java.io.File
Resolve.java: java.io.File
sylilzy: javax.naming.Context
System Volume Information: javax.naming.Context
迅雷下载: javax.naming.Context
 
五、说明
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 Space —— 所谓的命名空间物理上可以理解为:一个映射了名字和对应对象(资源)内容的定义文件,此文件以.bindings为名;需要使用context对象对命名空间的各个命名进行操作。
Context —— 即所谓的上下文环境,由JNDI Server Provider创建和维护。
JNDI Server Provider —— JNDI服务提供方。也是一组API,他负责来对应的Context。  例如此试验用到的fscontext, 是一个文件系统JNDI Server Provider,它提供的com.sun.jndi.fscontext.RefFSContextFactory可用于创建JNDI的Context。
本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请点击举报
打开APP,阅读全文并永久保存 查看更多类似文章
猜你喜欢
类似文章
【热】打开小程序,算一算2024你的财运
初识JNDI
开发基于JNDI的应用程序
Java技术回顾之JNDI(二):JNDI应用实例,Java技术文章,Java系列教程,Java
weblogic的JDNI连接
Java中的JNDI (Java命名与目录接口)
JNDI 学习
更多类似文章 >>
生活服务
热点新闻
分享 收藏 导长图 关注 下载文章
绑定账号成功
后续可登录账号畅享VIP特权!
如果VIP功能使用有故障,
可点击这里联系客服!

联系客服