码迷,mamicode.com
首页 > 其他好文 > 详细

07.十分钟学会tomcat数据源

时间:2017-11-10 20:34:57      阅读:257      评论:0      收藏:0      [点我收藏+]

标签:作用   项目   数据库   serve   数据   空间   关注   -name   命名   

一、数据源的作用及操作原理

1,  首先先看下传统JDBC的操作

技术分享

在tomcat中使用数据库连接池操作数据库

技术分享

2,JNDI属于命名及目录查找接口,在javaee的javax.naming包中

这套API的主要作用在于:它可以把Java对象放在一个容器中(JNDI容器),并为容器中的java对象取一个名称,以后程序想获得Java对象,只需通过名称检索即可。其核心APIContext,它代表JNDI容器,其lookup方法为检索容器中对应名称的对象。

Tomcat服务器创建的数据源会自动绑定到JNDI资源中,应用程序想要使用数据源时,直接通过JNDI的lookup方法检索数据源名称即可得到。

3,配置tomcat数据源

在项目META-INF/server.xml中配置服务器数据源

技术分享

这样,服务器在启动时,会自动帮我们创建一个数据库连接池

 技术分享

如果想在项目中使用数据源,还需要配置项目的WEB-INFO/web.xml文件

 技术分享

java:comp/env/   前面是固定的   
java:comp/env是标准的J2EE环境查找规则   
comp是company的缩写
env是environment的缩写
使用这种方式必须做一次环境名到JNDI名的映射 (<res-ref-name>)
这种隔离使得在写程序时不必关注真正的JNDI名字 
其实说白了跟把JNDI名放到配置文件里是一样的 

 

查找数据源

 技术分享

查找到数据源并从连接池中取得连接

 技术分享

conn.close()表示将当前连接放回连接池中,等待重复使用或空间超时后被释放

结果

 技术分享

 

拓展

服务器会为我们的应用程序创建很多资源,比如request对象,response对象,服务器创建的这些资源有两种方式提供给我们的应用程序使用:第一 种是通过方法参数的形式传递进来,比如我们在Servlet中写的doPost和doGet方法中使用到的request对象和response对象就是 服务器以参数的形式传递给我们的。第二种就是JNDI的方式,服务器把创建好的资源绑定到JNDI容器中去,应用程序想要使用资源时,就直接从JNDI容器中获取相应的资源即可。

07.十分钟学会tomcat数据源

标签:作用   项目   数据库   serve   数据   空间   关注   -name   命名   

原文地址:http://www.cnblogs.com/chenxd/p/7816049.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!