在JDBC2.0中,我们可以采用接口javax.sql.DataSource,利用直接从数据源中获得数据库的连接的方式编写连接数据库代码。
Dataource接口中事先建立了多个数据库连接,这些数据库连接保持在数据库连接池中。当程序访问数据库时,只需要从数据库连接池从取出空闲的连接,访问数据库结束,在将这些连接归还给连接池即可。
DataSource对象由容器(Tomcat)提供,不能使用创建实例的方式来生成DataSource对象,要采用JAVA的JNDI(Java Nameing and Directory Interface,java命名和目录接口)的方式来获得DataSource对象的引用。 JNDI是一种将对象和名字绑定的技术,对象工厂负责生产出对象,这些对象都和唯一的名字相绑定。程序中可以通过这个名字来获得对象的引用。Tomcat把DataSource作为一种可配置的JNDI资源来处理,生成DataSource对象的工厂为org.apache.comm.ons.dbcp.BasicDataSourceFactory。
配置过程如下(以Oracle数据库为例):
- 将Oracle数据库的JDBC驱动ojdbc14.jar放入TOMCAT_HOME/lib下。
- Tomcat7.0\conf\context.xml的
标签之间中添加如下信息:
- 配置工程的web.xml文件:在工程目录下bin下建立WEB-INF,其中建立web.xml,内容如下所示:
DB Connection
jdbc/hcDemo
javax.sql.DataSource
Container
注意,jdbc/hcDemo名字一定要统一。