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.jsp文件,进行测试
在tomcat中发布项目,启动tomcat,浏览器打开测试结果如下:
这就是配置到tomcat里的资源,已经被成功的获取出来了.
课程的小结