jndi知识的学习

1.jndi用于读取资源信息.

2.jndi是Java Naming and Directory Interface 的缩写,汉意是:Java命名和目录接口.

3.原理是:通过名称将资源与服务进行关联.

4.作用:在应用与Java对象或资源之间建立松耦合的逻辑关联,简化应用对于资源的配置及维护工作.

5.优点:可以在更大范围,不同应用之间共享资源.

这里的感觉就像是每本书的目录,通过目录能定位到相应的内容,通过jndi可以定位到相应的资源

之前使用jdbc将数据库配置到项目中去

可以将整个资源和服务独立开,完成了解耦的操作

资源的配置和维护工作完全的独立出来,简化本应用中资源配置和维护工作

Tomcat是服务器的一种,这里支持jndi技术

可以在Tomcat中发布信息供所有的Web应用程序使用?

发布信息:修改Tomcat\conf\context.xml文件     这个步骤也叫配置资源

<Context>  这个节点是context.xml文件中自带的功能

            下面这个节点是后来需要添加的内容Environment代表的是资源的信息

            <Environment name="tjndi" value="hello JNDI" type="java.lang.String"/>

            name属性对应的值,是JNDI查找的名称 

            value 属性是这个JNDI的名称对应的资源的值

            type指代的是value的数据类型,一般填写的是全称,就是该类型所在的目录结构           

</ Context>

获取资源:使用lookup()进行查找

//javax.naming.Context提供了查找JNDI的接口

Context ctx= new InitialContext();  //初始化Context对象

//java:comp/env/为前缀

String testjndi=(String)ctx.lookup("java:comp/env/tjndi");//调用lookup()方法

out.print("JNDI:"+testjndi);

下图是配置jndi资源的图片

jndi知识的学习

编写jndi.jsp文件,进行测试

jndi知识的学习

在tomcat中发布项目,启动tomcat,浏览器打开测试结果如下:

jndi知识的学习


这就是配置到tomcat里的资源,已经被成功的获取出来了.

课程的小结

jndi知识的学习