Java Naming and Directory Interface,Java命名和目录接口;
百度百科提到:
命名服务将名称和对象联系起来,使得我们可以用名称访问对象。目录服务是一种命名服务,在这种服务里,对象不但有名称,还有属性。
命名服务:
给对象起个名称,并将名称和该对象绑定,然后可以通过名称找到相应的对象;
目录服务:
不只保存对象和对应名称的关联,对象还有各种属性,并且可以对属性进行增删改查;
JNDI会在内存中构件一个树形结构或叫层次结构,保存名称和对象、属性;(个人理解)
JNDI类似Jdbc,有两套接口,一套给厂商使用,另一套给开发者使用;
Tomcat自己提供了连接池,但需要以JNDI的方式访问;
Tomcat作为厂商提供了IntialContext的实现;
java:comp/env -->固定名称,JNDI的命名空间,访问入口;
Tomcat6.X配置自己的连接池,示例:
$Tomcat_home/conf/catalina/localhost/a.xml:
<Context>
<Resource
name="jdbc/news" auth="Container" type="javax.sql.DataSource" maxActive="100" maxIdle="30" maxWait="10000" username="orcl" password="name" driverClassName="oracle.jdbc.driver.OracleDriver" url="jdbc:oracle:thin:@localhost:1521:orcl"
/>
</Context>
jdbc/news:是数据库连接的jndi名称,可通过这个名称获得连接;
Tomcat5.5配置自己的连接池,除了上面的配置还需配置web.xml:
<web-app>
<resource-ref> <description>news DataSource</description> <res-ref-name>jdbc/news</res-ref-name> <res-type>javax.sql.DataSource</res-type> <res-auth>Container</res-auth></resource-ref>
</web-app>
(参考http://blog.csdn.net/qy1387/article/details/8053962)
配置结束后,需要在代码中通过jndi调用:
Context ctx = new InitialContext();
DataSource ds = (DataSource)ctx.lookup("java:comp/env/jdbc/news");
Connection conn = ds.getConnection();
(以上全文,如有不正确,欢迎指正!)
分享到:
相关推荐
简单我tomcat5.0中的JNDI应用
JNDI服务利用工具 RMI/LDAP,支持部分场景回显、内存shell,高版本JDK场景下利用等,fastjson rce命令执行,log4j rce命令执行 漏洞检测辅助工具
JNDI测试项目JNDI测试项目JNDI测试项目JNDI测试项目JNDI测试项目JNDI测试项目JNDI测试项目JNDI测试项目JNDI测试项目JNDI测试项目JNDI测试项目JNDI测试项目JNDI测试项目JNDI测试项目JNDI测试项目JNDI测试项目JNDI测试...
jboss配置MySql的JNDI
hibernate 3.1+tomcat 5.5.x(配置jndi)hibernate 3.1+tomcat 5.5.x(配置jndi)hibernate 3.1+tomcat 5.5.x(配置jndi)hibernate 3.1+tomcat 5.5.x(配置jndi)hibernate 3.1+tomcat 5.5.x(配置jndi)hibernate 3.1+...
jndi配置,jndi配置jndi配置jndi配置jndi配置jndi配置jndi配置jndi配置
jndi入门学习资料,介绍jndi基本原理,安装和使用,基本配置
在JAVA编程中对JNDI的支持.是一个开放的源码.
java asm jndi_JNDI-Injection-Exploit,用于log4j2漏洞验证 可执行程序为jar包,在命令行中运行以下命令: $ java -jar JNDI-Injection-Exploit-1.0-SNAPSHOT-all.jar [-C] [command] [-A] [address] 其中: -C ...
自定义jndi数据源factory类,用于解密jndi中的加密数据,解密方式为DES,具体可根据实际需求修改。
JNDI java操作示例,JNDI java操作示例
jndi.jndi.jndi.jndi.jndi.jndi.jndi.jndi.jndi.
Windows_7_下搭建LDAP服务器并使用JNDI Windows_7_下搭建LDAP服务器并使用JNDI Windows_7_下搭建LDAP服务器并使用JNDI
tomcat的JNDI配置详细介绍 介绍详细,思路清晰
jndi所依赖的jar包,fscontext.jar和providerutil.jar,jndi.jar 将jndi.jar复制到%JAVA_HOME%\jre\lib\ext目录下就可得到持久的扩展
配置了tomcat之后发现jndi好简单啊,可是碰到了hibernate该怎么做呢,本例详细解析
JNDI配置原理详解 JNDI配置原理详解.doc
TOMCAT8 JNDI对用户名和密码加密
JNDI(Java Naming and Directory Interface)是SUN公司提供的一种标准的Java命名系统接口,JNDI提供统一的客户端API,通过不同的访问提供者接口JNDI SPI的实现,由管理者将JNDI API映射为特定的命名服务和目录系统,...