数据库连接池技术?
发布网友
发布时间:2022-04-08 20:07
我来回答
共1个回答
热心网友
时间:2022-04-08 21:37
//创建Context对象
Context context=new InitailContext();
//创建Datasource对象
DataSource source=(DataSource)context.lookup(java:comp/env/名称);
//获取连接对象
Connection conn=source.getConnection();
第一步、配置tomcat目录下/conf下的context.xml
<Resource name="jdbc/admin_ora10g" auth="Container" type="javax.sql.DataSource" maxActive="100" maxIdle="30" maxWait="10000" username="ggdx2" password="ggdx2" driverClassName="oracle.jdbc.driver.OracleDriver" url="jdbc:oracle:thin:@192.168.0.96:1521:orcl:database>
<Resource name="jdbc/dtqw" auth="Container" type="javax.sql.DataSource" maxActive="100" maxIdle="30" maxWait="10000" username="dtqw " password="dtqw " driverClassName="oracle.jdbc.driver.OracleDriver" url="jdbc:oracle:thin:@192.168.0.250 :1521:orcl:database>
第二步、配置项目中/WEB-INF/下的web.xml<resource-ref>
<description>OracleDataSource1</description>
<res-ref-name>jdbc/admin_ora10g</res-ref-name>
<res-type>javax.sql.DataSource</res-type>
<res-auth>Container</res-auth>
</resource-ref><resource-ref>
<description>OracleDataSource2</description>
<res-ref-name>jdbc/dtqw</res-ref-name>
<res-type>javax.sql.DataSource</res-type>
<res-auth>Container</res-auth>
</resource-ref> 第三步、测试数据源 Context ic= new InitialContext();
DataSource dataSource = (DataSource)ic.lookup("jdbc/admin_ora10g");
if (dataSource != null)
Connection connection = dataSource.getConnection(); 没验证过不敢保证没错误,下面说明各个属性的意思name:指定Resource的JNDI的名字、auth:指定管理Resource的Manager,它有两个值:Container 和Application,
Container并表示有容器来创建Resource,Application表示有Web应用来创建和管理Resource、type:指定Resource所属的Java类名、maxActive:指定数据库连接池中处于活动状态的数据库连接的最大数目,取值为0,表示不受*、maxIdle:指定数据库连接池中处于空闲状态的数据库连接的最大数目,取值为0,表示不受*、maxWait:指定数据库连接池中的数据库连接处于空闲状态的最长时间(以毫秒为单位),超过
这一时间将会抛出异常,取值为-1,表示可以无*等待、username:指定连接数据库的用户名、password:指定连接数据库的口令、driverClassName:指定连接数据库的JDBC驱动程序、url:指定连接数据库的URL、