Tomcat数据源总结


一、数据源的由来


JDBC操作主要由以下几步组成:

(1)Class.forName();

(2)Connection con = DriverManager.getConnection();

(3)PreparedStatement stat = con.prepareStatement();

(4)stat.executeQuery();

(5)con.close();

很显然,(1)(2)(5)步是每次JDBC操作都要执行的,重复执行是非常耗时的,因此为了解决重复操作的问题,引入了数据源。


二、数据源介绍


存在一个数据库连接池,在池中存在多个数据库连接,用户对数据库操作时取出一个,用完放回连接池中。

考虑因素:

(1)最小连接数:连接池中最小的连接个数;

(2)最大连接数:连接池中最大连接个数;

(3)最大等待时间:不能连接时最长等待时间;

Tomcat对数据库连接池支持;


三、JNDI(Java Naming Directory Interface)


1.通过DataSource的名字查找对应的DataSource;

2.通过一个DataSource在连接池中获得一个Connection;

四、配置步骤


(1)将数据库的驱动程序复制到tomcat\lib中;

(2)在server.xml中加入:

<Context path="/Test" docBase="E:\JAVA WEB" reloadable="true"><!-- 数据源需要在Context中配置-->
<Resource name="jdbc/xiazdong"<!-- 数据源名称-->
auth="Container"
type="javax.sql.DataSource"
maxActive="100"<!-- 最大连接数-->
maxIdle="30"<!-- 最小连接数-->
maxWait="10000"<!-- 最大等待时间-->
username="root"
password="123456"
driverClassName="com.mysql.jdbc.Driver"
url="jdbc:mysql://localhost:3306/xiazdong"/>
</Context>

(3)在web.xml中加入:

<resource-ref>
<description>DB Connection</description>
<res-ref-name>jdbc/xiazdong</res-ref-name>
<res-type>javax.sql.DataSource</res-type>
<res-auth>Container</res-auth>
</resource-ref>


五、主要操作步骤


Context ctx = new InitialContext();

DataSource ds = ctx.lookup("java:comp/env/jdbc/xiazdong");

Connection con = ds.getConnection();

可以很清楚的看出,从以上代码完全看不出操作的是哪个数据库,配置都在配置文件中;

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值