Lesson07-04 Java语言数据库连接池.pdf
-
资源ID:4056592
资源大小:1.76MB
全文页数:18页
- 资源格式: PDF
下载积分:2金币
快捷下载
会员登录下载
微信登录下载
三方登录下载:
微信扫一扫登录
友情提示
2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
|
Lesson07-04 Java语言数据库连接池.pdf
Java Java 核心技术核心技术( (进阶进阶) ) 第七章第七章 JavaJava数据库编程数据库编程 第四节第四节 数据库连接池数据库连接池 1 Java连接数据库操作步骤连接数据库操作步骤 构建连接构建连接(搭桥搭桥) 注册驱动注册驱动,寻找材质寻找材质, class.forName(“”);, class.forName(“”); 确定对岸目标确定对岸目标 , , 建桥建桥 ConnectionConnection 执行操作执行操作(派个人过桥派个人过桥, , 提着篮子提着篮子,去拿数据去拿数据) Statement (Statement (执行者执行者) ) ResultSet(ResultSet(结果集结果集) ) 释放连接释放连接(拆桥拆桥) connection.close();connection.close(); 享元模式享元模式(1) ConnectionConnection是是JavaJava和数据库两个平行系统的桥梁和数据库两个平行系统的桥梁 桥梁构建不易桥梁构建不易,成本很高成本很高,单次使用成本昂贵单次使用成本昂贵 运用共享技术来实现数据库连接池运用共享技术来实现数据库连接池( (享元模式享元模式) ) 降低系统中数据库连接降低系统中数据库连接ConnectionConnection对象的数量对象的数量 降低数据库服务器的连接响应消耗降低数据库服务器的连接响应消耗 提高提高ConnectionConnection获取的响应速度获取的响应速度 享元模式享元模式(2) 享元模式享元模式, Flyweight Pattern, Flyweight Pattern 经典经典2323个设计模式的一种个设计模式的一种,属于结构型模式属于结构型模式。 一个系统中存在大量的相同的对象一个系统中存在大量的相同的对象, 由于这类对象的大量使用由于这类对象的大量使用,会造成系统内存的耗费会造成系统内存的耗费, 可以使用享元模式来减少系统中对象的数量可以使用享元模式来减少系统中对象的数量。 数据库连接池数据库连接池 理解池理解池PoolPool的概念的概念 初始数初始数、最大数最大数、增量增量、超时时间等参数超时时间等参数。 常用的数据库连接池常用的数据库连接池 DBCP (Apache, DBCP (Apache, http:/commons.apache.org/http:/commons.apache.org/,性能较差性能较差) ) C3P0 ( ( Druid (Alibaba, (Alibaba, C3P0连接池连接池(1) com.mysql.jdbc.Driver jdbc:mysql:/localhost:3306/test root 123456 5 20 C3P0连接池连接池(2) driverClassdriverClass 驱动驱动classclass,这里为这里为mysqlmysql的驱动的驱动 jdbcUrljdbcUrl jdbcjdbc链接链接 useruser passwordpassword数据库用户名密码数据库用户名密码 initialPoolSizeinitialPoolSize 初始数量初始数量:一开始创建多少条链接一开始创建多少条链接 maxPoolSizemaxPoolSize 最大数最大数:最多有多少条链接最多有多少条链接 acquireIncrementacquireIncrement 增量增量:用完每次增加多少个用完每次增加多少个 maxIdleTimemaxIdleTime最大最大空闲时间空闲时间:超出的链接会被抛弃超出的链接会被抛弃 总结总结 了解享元模式的基础概念了解享元模式的基础概念 了解连接池的概念了解连接池的概念,配置和创建数据库连接池配置和创建数据库连接池 选用合适的连接池选用合适的连接池,可参考可参考各种数据库连接池对比各种数据库连接池对比 代码代码(1) SelectTest.java 代码代码(2) SelectTest.java 代码代码(3) C3p0Factory1.java 代码代码(4) C3p0Factory1.java 代码代码(5) C3p0Factory2.java 代码代码(6) DruidFactory1.java 代码代码(7) DruidFactory2.java 代码代码(8) c3p0-config.xml 代码代码(9) druid.properties 18 谢谢 谢谢!