Oracle数据库连接池的实现

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/HJBZF/article/details/80810156

数据连接池的工做机制:J2EE服务器启动时会建立一定数量的池连接,并一直维持不少此数目的池连接。客户端程序需要连接时,池驱动程序会返回一个未使用的池连接并将其表记为忙。如果当前没有空闲连接,池驱动程序就新建一定数量的连接,新建连接的数量有配置参数决定。当使用的池连接调用完成后,池驱动程序将此连接记为空闲连接,池驱动程序就新建一定数量的连接,新建连接的数量有配置参数决定。当使用的池连接调用完成后,池驱动程序将此连接表记为空闲,其他调用就可以使用这个连接。

我们在项目使用数据库连接时,会用到db.properties里面写:

driver=oracle.jdbc.driver.OracleDriver
url=jdbc:oracle:thin:@127.0.0.1:1521:orcl
user=scott
password=a

但我们在使用server的时候,可以将其配置数据库连接池中,在tomcat的项目servers的content.xml中写入:

<Resource
    	name="yc"
    	auth="Container"
    	type="javax.sql.DataSource"
    	driverClassName="oracle.jdbc.driver.OracleDriver"
    	url="jdbc:oracle:thin:@127.0.0.1:1521:orcl"
    	username="scott"
    	password="a"
    	maxActive="100"
    	maxWait="8000"
    	maxIdle="30"
    	autoReConnect="true"
    />
    <!-- 
    	name:指定Resource的JNDI的名字
    	auth:指定管理Resource的Manager(Container:有容器创建和管理   Application:由web应用创建和管理)
    	type:指定Resource的类型
    	driverClassName:驱动名、
    	username:用户名
    	password:密码
    	maxActive:当前数据源支持的最大开发数,指定连接池中处于活动状态的数据库连接的最大数目,一般建议设定为网站注册人数的十分之一到二十分之一
    	maxWait:当连接池中无连接可用时,最大的等待毫秒数
    	maxIdle:指定连接池中处于空闲状态的数据库连接的最大数目
    	autoReConnect:当数据库连接异常中断时,是否自动重连
     -->

猜你喜欢

转载自blog.csdn.net/HJBZF/article/details/80810156