Tomcat 7-dbcp配置数据库连接池详解

原理
关于连接池,大家都晓得用来限定对数据库的连接。基本的原理是预先在缓冲池中放入一定的空闲连接,当程序需要和数据库来交互时,不是直接新建数据库连接而是在连接池中直接取,使用完成后再放回到连接池中。为什么要这样牺牲一个缓冲来存放这些原本就会使用的连接呢?在上面讲了一个好处就是可以限定连接数,这样不会造成N多的数据库连接最后宕机;额外有了这样一个连接池,也可以来监听这些连接和便于管理。
配置
1.拷贝相关的jar
要知道连接池不是用来直接操作数据库的,最终进行相关操作的还是相关的jdbc驱动。如果是tomcat服务器,直接将驱动拷到tomncat的lib中。对于Java是ojdbc6.jar;对于sqlserver来讲是tomcat-dbcp.jar、servlet-ap.jar和sql server的驱动sqljdbc4.jar 包到项目文件的web-inf 文件夹下的lib目录。
2.配置context.xml
name="jdbc/drp" auth="Container" type="javax.sql.DataSource" factory="org.apache.tomcat.jdbc.pool.DataSourceFactory" maxActive="100" maxIdle="30" maxWait="10000" username="drp1" password="drp1" driverClassName="oracle.jdbc.driver.OracleDriver" url="jdbc:oracle:thin:@localhost:1521:drp" />
如果是全局配置的话,将context.xml文件放在tomcat的配置文件夹conf中即可;若想局部控制就需要将context.xml放在指定的项目中webroot的meta-inf中,就只会对自己本项目起作用。
注:
Name:指定连接池的名称 Auth:是连接池管理权属性,Container表示容器管理 type:数据源类型 factory:这个是在tomcat 5之后对于commons-dbcp的一种处理方案,具体是用了这样一个指定的实现类来处理的。性能更加优越,也能够兼容dbcp。 maxActive:最大的分配连接数。 maxIdle:idle是空闲的意思,所以这个就是当tomcat启动时,缓冲池为连接的新建的连接数。 maxWait:本文最大响应时间为10s。 url:为数据库地址。 sqlserver的格式:jdbc:sqlserver://localhost:1433;DatabaseName=name; driverclassname:驱动地址。 sqlserver的为:com.microsoft.sqlserver.jdbc.SQLServerDriver
3.验证
Connectionconn=null;
PreparedStatementpstmt=null;
ResultSetrs=null;
try{
//实例DBCP连接池
Contextctx=new InitialContext();
//通过JNDI访问指定的连接池
DataSourceds=(DataSource)ctx.lookup("java:comp/env/jdbc/drp");
//实例化数据库连接
conn=ds.getConnection();
//查询语句
pstmt=conn.prepareStatement("select* from t_user");
rs=pstmt.executeQuery();
if(rs.next()){
System.out.print(rs.getString("user_id")+rs.getString("user_name"));
System.out.print(conn);
}
}catch(SQLExceptione){
}
finally{
}
后序
之前tomcat 5的版本即可以在localhost:8080/admin中视图化配置,也可在xml中;后面就弃用了视图化配置的过程。总得来说对于针对数据连接的处理的方案,有他的好处,也需要开发人员在平时的编程中养成好的习惯,如果对于开启的连接没有关闭,当连接池够大的时候,会影响性能;如果达到峰值,那么程序直接宕掉。也减少了咱们在创建数据库连接的时间。当然除了dbcp,也有C3P0、Poolmen这样的处理方案。
感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!
# Tomcat
# 7-dbcp配置数据库连接池详解
# 浅谈在Spring中如何使用数据源(DBCP、C3P0、JNDI)
# Java数据库连接池之DBCP浅析_动力节点Java学院整理
# dbcp 连接池不合理的锁导致连接耗尽解决方案
# java使用dbcp2数据库连接池
# java配置dbcp连接池(数据库连接池)示例分享
# Java dbcp连接池基本使用方法详解
# 连接池
# 是在
# 放在
# 连接数
# 用了
# 这样一个
# 池中
# 就会
# 也有
# 大家都
# 也可
# 希望能
# 可在
# 会对
# 要知道
# 时间为
# 在上面
# 谢谢大家
# 讲了
# 开发人员
相关文章:
无锡营销型网站制作公司,无锡网选车牌流程?
如何快速辨别茅台真假?关键步骤解析
如何基于PHP生成高效IDC网络公司建站源码?
建站主机如何选?高性价比方案全解析
详解免费开源的.NET多类型文件解压缩组件SharpZipLib(.NET组件介绍之七)
如何获取上海专业网站定制建站电话?
定制建站平台哪家好?企业官网搭建与快速建站方案推荐
网站制作公司哪里好做,成都网站制作公司哪家做得比较好,更正规?
建站主机与虚拟主机有何区别?如何选择最优方案?
如何快速搭建高效WAP手机网站吸引移动用户?
如何在IIS中新建站点并配置端口与物理路径?
太原网站制作公司有哪些,网约车营运证查询官网?
一键制作网站软件下载安装,一键自动采集网页文档制作步骤?
如何快速搭建高效WAP手机网站?
已有域名和空间如何搭建网站?
高防服务器如何保障网站安全无虞?
如何快速建站并高效导出源代码?
网站制作哪家好,cc、.co、.cm哪个域名更适合做网站?
微课制作网站有哪些,微课网怎么进?
如何用VPS主机快速搭建个人网站?
极客网站有哪些,DoNews、36氪、爱范儿、虎嗅、雷锋网、极客公园这些互联网媒体网站有什么差异?
网站建设制作、微信公众号,公明人民医院怎么在网上预约?
C++中引用和指针有什么区别?(代码说明)
如何通过VPS搭建网站快速盈利?
广州网站制作公司哪家好一点,广州欧莱雅百库网络科技有限公司官网?
制作门户网站的参考文献在哪,小说网站怎么建立?
建站中国必看指南:CMS建站系统+手机网站搭建核心技巧解析
建站与域名管理如何高效结合?
小型网站制作HTML,*游戏网站怎么搭建?
高防服务器租用指南:配置选择与快速部署攻略
建站之星安装失败:服务器环境不兼容?
教育培训网站制作流程,请问edu教育网站的域名怎么申请?
建站之星会员如何解锁更多建站功能?
建站之星×万网:智能建站系统+自助建站平台一键生成
javascript中对象的定义、使用以及对象和原型链操作小结
昆明高端网站制作公司,昆明公租房申请网上登录入口?
c# 在高并发场景下,委托和接口调用的性能对比
建站主机服务器选型指南与性能优化方案解析
如何在服务器上三步完成建站并提升流量?
孙琪峥织梦建站教程如何优化数据库安全?
西安专业网站制作公司有哪些,陕西省建行官方网站?
建站之星如何配置系统实现高效建站?
如何解决ASP生成WAP建站中文乱码问题?
盐城做公司网站,江苏电子版退休证办理流程?
官网自助建站系统:SEO优化+多语言支持,快速搭建专业网站
微信网站制作公司有哪些,民生银行办理公司开户怎么在微信网页上查询进度?
建站之星如何通过成品分离优化网站效率?
javascript基本数据类型及类型检测常用方法小结
定制建站价位费用解析与套餐推荐全攻略
道歉网站制作流程,世纪佳缘致歉小吴事件,相亲网站身份信息伪造该如何稽查?
*请认真填写需求信息,我们会在24小时内与您取得联系。