java mysql连接池配置_java配置数据库连接池的方法步骤

java配置数据库连接池的方法步骤

java配置数据库连接池的方法步骤,需要的朋友可以参考一下

先来了解下什么是数据库连接池

数据库连接池技术的思想非常简单,将数据库连接作为对象存储在一个Vector对象中,一旦数据库连接建立后,不同的数据库访问请求就可以共享这些连接,这样,通过复用这些已经建立的数据库连接,可以克服上述缺点,极大地节省系统资源和时间。

在实际应用开发中,特别是在WEB应用系统中,如果JSP、Servlet或EJB使用JDBC直接访问数据库中的数据,每一次数据访问请

求都必须经历建立数据库连接、打开数据库、存取数据和关闭数据库连接等步骤,而连接并打开数据库是一件既消耗资源又费时的工作,如果频繁发生这种数据库操

作,系统的性能必然会急剧下降,甚至会导致系统崩溃。数据库连接池技术是解决这个问题最常用的方法,在许多应用程序服务器(例

如:Weblogic,WebSphere,JBoss)中,基本都提供了这项技术,无需自己编程,但是,深入了解这项技术是非常必要的。

数据库连接池的主要操作如下:

(1)建立数据库连接池对象(服务器启动)。

(2)按照事先指定的参数创建初始数量的数据库连接(即:空闲连接数)。

(3)对于一个数据库访问请求,直接从连接池中得到一个连接。如果数据库连接池对象中没有空闲的连接,且连接数没有达到最大(即:最大活跃连接数),创建一个新的数据库连接。

(4)存取数据库。

(5)关闭数据库,释放所有数据库连接(此时的关闭数据库连接,并非真正关闭,而是将其放入空闲队列中。如实际空闲连接数大于初始空闲连接数则释放连接)。

(6)释放数据库连接池对象(服务器停止、维护期间,释放数据库连接池对象,并释放所有连接)。

配置步骤:

1.在Tomcat  conf/content.xml中节点内添加如下内容

auth="Container"type="javax.sql.DataSource" maxActive="100" maxIdle="30"

maxWait="10000" username="sa" password="120010"

driverClassName="com.microsoft.sqlserver.jdbc.SQLServerDriver"

url="jdbc:sqlserver://localhost:1433;DatabaseName=news"/>

name:之后我们要调用resource时候用到

type:是链接数据库时候用到的java扩展包下的类

maxActive:最大连接数

maxIdle:是空闲时候最大连接数

maxwait:空闲判断标准

注意:

1).该配置文件里不允许有中文;各个属性间的用一个空格隔开

2).要将对应链接数据库的jar包放到tomcat /lib文件夹中工程中就不需要存放了

下面还中是链接oracle的

url="jdbc:oracle:thin:@192.168.2.102:1521:orcl"

driverClassName="oracle.jdbc.driver.OracleDriver" password="bg"

username="test" maxWait="10000" maxIdle="30" maxActive="100"

auth="Container"/>

2.在工程的web.xml中添加如下代码

jdbc/news

javax.sql.DataSource

Container

这里标签里面的名字就是在content.xml文件中的name的名字

3.得到数据库连接池中的Connection对象

Context context=new InitialContext();

DataSourceds=(DataSource)context.lookup("java:comp/env/jdbc/news");

Connectionconn = ds.getConnection();

注意:context是javax.namingx下的类,dataSource是javax.sql下的类 ,"java:comp/env/jdbc/news"中:java:comp/env是固定写法 jdbc/news是jndi名称(Tomcat中配置的那个name)

如果我们不是在web.xml中配置数据源,我们用spring来控制数据库链接方法步骤:

1).在配置文件中添加如下节点

配置好了获取sql语句查询数据有多少条:

调用的时候直接Dao类继承JdbcDaoSupport类(spring.jar中的类)

int count = this.getJdbcTemplate().queryForInt("select * from users");

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值