电气工程
会计论文
金融论文
国际贸易
财务管理
人力资源
轻化工程
德语论文
工程管理
文化产业管理
信息计算科学
电气自动化
历史论文
机械设计
电子通信
英语论文
物流论文
电子商务
法律论文
工商管理
旅游管理
市场营销
电视制片管理
材料科学工程
汉语言文学
免费获取
制药工程
生物工程
包装工程
模具设计
测控专业
工业工程
教育管理
行政管理
应用物理
电子信息工程
服装设计工程
教育技术学
论文降重
通信工程
电子机电
印刷工程
土木工程
交通工程
食品科学
艺术设计
新闻专业
信息管理
给水排水工程
化学工程工艺
推广赚积分
付款方式
首页
|
毕业论文
|
论文格式
|
个人简历
|
工作总结
|
入党申请书
|
求职信
|
入团申请书
|
工作计划
|
免费论文
|
现成论文
|
论文同学网
|
全站搜索
搜索
高级搜索
当前位置:
论文格式网
->
免费论文
->
计算机毕业论文
数据库连接池技术的研究与实现(二)
本文ID:TXW821156
全文字数:
全文下载链接
(充值:30元)
如何充值?
数据库连接是一种关键的有限的昂贵的资源,这一点在多用户的网页应用程序中体现得尤为突出。对数据库连接的管理能显著影响到整个应用程序的伸缩性和健壮性,影响到程序的性能指标。数据库连接池正是针对这个问题提出来的。数据库连接池负责分配、管理和释放数据库连接,它允许应用程序重复使用一个现有的数据库连接,而再不是重新建立一个;释放空闲时间超过最大空闲时间的数据库连接来避免因为没有释放数据库连接而引起的数据库连接遗漏。这项技术能明显提高对数据库操作的性能。
Java中常用的数据库连接池有:DBCP 、C3P0、BoneCP、Proxool、DDConnectionBroker、DBPool、XAPool、Primrose、SmartPool、MiniConnectionPoolManager及Druid等
2.数据库连接池的运行机制
(1) 程序初始化时创建连接池
(2) 使用时向连接池申请可用连接
(3) 使用完毕,将连接返还给连接池
(4) 程序退出时,断开所有连接,并释放资源
3.数据库连接池的关键问题剖分析
1)并发问题
要自己动手实现一个连接池,有许多功能上的考虑。为了使连接管理服务具有最大的通用性,必须考虑多线程环境,即并发问题。这个问题相对比较好解决,因为Java语言自身提供了对并发管理的支持,使用synchronized(加锁)关键字即可确保线程是同步的。使用方法为直接在类方法前面加上synchronized关键字,如:
public synchronized Connection getConnection()
2)连接池的分配与释放
连接池的分配与释放,对系统的性能有很大的影响。合理的分配与释放,可以提高连接的复用度,从而降低建立新连接的开销,同时还可以加快用户的访问速度。
对于连接的管理使用空闲池。即把已经创建但没有分配出去的连接存放到一个空闲池中,当用户请求一个连接时,系统首先检查空闲池内有没有空闲连接,如果有就分配一个给用户,如果没有,则检查当前连接池中的连接是否达到连接池最大连接数。如果没有达到,就创建一个新的连接,并将其分配给用户,如果已经达到,就等待一定时间。如果在等待时间内,有连接被其他用户释放,将该连接分配给请求的用户,如果没有,当超出等待时间限制时,返回空值。
系统对已经分配出去的连接只做计数,当用户使用完后连接调用close()时,不会真正的关闭连接,只会断开应用程序与连接池之间的联系,数据库连接的使用权会被返还给连接池。
3)连接池的配置与维护
连接池中到底应该放置多少连接,才能使系统的性能最佳?系统可采取设置最小连接数(minConn)和最大连接数(maxConn)来控制连接池中的连接。最小连接数是系统启动时连接池所创建的连接数。如果创建过多,则系统启动就慢,但创建后系统的响应速度会很快;如果创建过少,则系统启动的很快,响应起来却慢。这样,可以在开发时,设置较小的最小连接数,开发起来会快,而在系统实际使用时设置较大的,因为这样对访问客户来说速度会快些。最大连接数是连接池中允许连接的最大数目,具体设置多少,要看系统的访问量,可通过反复测试,找到最佳点。
4)事务处理
我们知道,MySQL中Innodb支持事务,而MyISAM不支持事务事务,具有原子性、一致性、隔离性、持久性,此时要求对数据库的操作符合“ALL-ALL-NOTHING”原则,即对于一组SQL语句要么全做,要么全不做。
在Java语言中,Connection类本身提供了对事务的支持,可以通过设置Connection的AutoCommit属性为false,然后显式的调用commit或rollback方法来实现。但要高效的进行Connection复用,就必须提供相应的事务支持机制。可采用每一个事务独占一个连接来实现,这种方法可以大大降低事务管理的复杂性。
4.使用数据源实现数据库连接池
数据源
数据源是JDBC2.0中引入的一个概念。
在JDBC扩展包中定义了javax.sql.DataSource接口,它有一组特性用于确定和描述它所表示的现实存在的数据源,配置好的数据库连接池也是以DataSource形式存在。其实现类负责建立与数据库的连接,在应用程序中访问数据库时不必再编写连接数据库的代码,可以直接从数据源中获取数据库连接。
在web应用程序中,数据源是由web容器(Tomcat)提供的,因此无法在程序中采用创建类实例的方式来生成DataSource对象,需要通过JNDI技术来获取,前提是在web容器中配置了数据源。
配置数据源
配置context.xml
context.xml有两种配置方式:
首页
上一页
1
2
3
下一页
尾页
2
/3/3
相关论文
本论文在
计算机毕业论文
栏目,由
论文格式
网整理,转载请注明来源
www.lwgsw.com
,更多论文,请点
论文格式范文
查看
最新论文
热门论文
上一篇
:
计算机病毒解析与防范技术研究
下一篇
:
互联网发展的利与弊
Tags:
数据库
连接
技术
研究
实现
【
收藏
】 【
返回顶部
】
人力资源论文
金融论文
会计论文
财务论文
法律论文
物流论文
工商管理论文
其他论文
保险学免费论文
财政学免费论文
工程管理免费论文
经济学免费论文
市场营销免费论文
投资学免费论文
信息管理免费论文
行政管理免费论文
财务会计论文格式
数学教育论文格式
数学与应用数学论文
物流论文格式范文
财务管理论文格式
营销论文格式范文
人力资源论文格式
电子商务毕业论文
法律专业毕业论文
工商管理毕业论文
汉语言文学论文
计算机毕业论文
教育管理毕业论文
现代教育技术论文
小学教育毕业论文
心理学毕业论文
学前教育毕业论文
中文系文学论文
精彩推荐
论文格式网
为您提供
计算机
毕业论文范文
下载,只需要
10
元
每份点击
计算机论文
进入查看