热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

mysql数据库连接池小_一个Demo小例子让你了解数据库连接池实现的4种方式

存在问题:由于数据库Connection资源是比较宝贵的,如果反复对每次来访问的Connection资源进行分配,释放的话,这样势必会影响

存在问题: 由于数据库Connection资源是比较宝贵的,如果反复对每次来访问的Connection资源进行分配,释放的话,这样势必会影响整个网站的访问性能,所以要做一点优化:引入数据库连接池 连接池实现原理: 1.用户给servlet发送请求,请求Dao要Connection 2.Da

存在问题:

由于数据库Connection资源是比较宝贵的,如果反复对每次来访问的Connection资源进行分配,释放的话,这样势必会影响整个网站的访问性能,所以要做一点优化:引入数据库连接池

连接池实现原理:

1.用户给servlet发送请求,请求Dao要Connection

2.Dao从“连接池”中取出Connection资源,与DB的通讯

3.当用户离开之后,释放该Connection,那么该Connection被释放到连接池中,等待下一个用户来

Demo目标:

通过简单的增删改查来做到下面几个关于连接池的方式,让我们更了解几种优化的方式

1.自定义一个Pool,来实现类似于现在开源连接池为我们做的一些操作

2.使用Tomcat内置的连接池(apache dbcp)

3.使用DBCP数据库连接池

4.使用C3P0数据库连接池(推荐)

步骤:

Read Me:

1.搭建开发环境:

jar包:

mysql驱动包:

mysql-connector-java-5.0.8-bin.jar

DBCP数据库连接池要用的jar:

commons-collections-3.1.jar

commons-dbcp-1.2.2.jar

commons-pool.jar

C3P0数据库连接池要用的jar:

mchange-commons-0.2.jar

c3p0-0.9.2-pre1.jar

配置文件:

自定义Pool: db.properties

DBCP: dbcpconfig.properties

C3P0: c3p0-config.xml

2.数据库创建:

create database test1;

use test1;

create table user(

id varchar(40) primary key,

username varchar(20),

password varchar(20)

);

3.建立组织包

cn.xym.domain

cn.xym.junit

cn.xym.utils

Demo打包下载地址:

http://download.csdn.net/detail/u011133213/6714537

本文原创发布php中文网,转载请注明出处,感谢您的尊重!



推荐阅读
  • PHP 5.2.5 安装与配置指南
    本文详细介绍了 PHP 5.2.5 的安装和配置步骤,帮助开发者解决常见的环境配置问题,特别是上传图片时遇到的错误。通过本教程,您可以顺利搭建并优化 PHP 运行环境。 ... [详细]
  • 深入理解 SQL 视图、存储过程与事务
    本文详细介绍了SQL中的视图、存储过程和事务的概念及应用。视图为用户提供了一种灵活的数据查询方式,存储过程则封装了复杂的SQL逻辑,而事务确保了数据库操作的完整性和一致性。 ... [详细]
  • 使用Vultr云服务器和Namesilo域名搭建个人网站
    本文详细介绍了如何通过Vultr云服务器和Namesilo域名搭建一个功能齐全的个人网站,包括购买、配置服务器以及绑定域名的具体步骤。文章还提供了详细的命令行操作指南,帮助读者顺利完成建站过程。 ... [详细]
  • PHP 编程疑难解析与知识点汇总
    本文详细解答了 PHP 编程中的常见问题,并提供了丰富的代码示例和解决方案,帮助开发者更好地理解和应用 PHP 知识。 ... [详细]
  • 优化ListView性能
    本文深入探讨了如何通过多种技术手段优化ListView的性能,包括视图复用、ViewHolder模式、分批加载数据、图片优化及内存管理等。这些方法能够显著提升应用的响应速度和用户体验。 ... [详细]
  • 深入理解Cookie与Session会话管理
    本文详细介绍了如何通过HTTP响应和请求处理浏览器的Cookie信息,以及如何创建、设置和管理Cookie。同时探讨了会话跟踪技术中的Session机制,解释其原理及应用场景。 ... [详细]
  • CentOS7源码编译安装MySQL5.6
    2019独角兽企业重金招聘Python工程师标准一、先在cmake官网下个最新的cmake源码包cmake官网:https:www.cmake.org如此时最新 ... [详细]
  • 本文详细介绍了 Dockerfile 的编写方法及其在网络配置中的应用,涵盖基础指令、镜像构建与发布流程,并深入探讨了 Docker 的默认网络、容器互联及自定义网络的实现。 ... [详细]
  • 本文深入探讨 MyBatis 中动态 SQL 的使用方法,包括 if/where、trim 自定义字符串截取规则、choose 分支选择、封装查询和修改条件的 where/set 标签、批量处理的 foreach 标签以及内置参数和 bind 的用法。 ... [详细]
  • 本文详细介绍了如何通过多种编程语言(如PHP、JSP)实现网站与MySQL数据库的连接,包括创建数据库、表的基本操作,以及数据的读取和写入方法。 ... [详细]
  • MySQL中枚举类型的所有可能值获取方法
    本文介绍了一种在MySQL数据库中查询枚举(ENUM)类型字段所有可能取值的方法,帮助开发者更好地理解和利用这一数据类型。 ... [详细]
  • golang常用库:配置文件解析库/管理工具viper使用
    golang常用库:配置文件解析库管理工具-viper使用-一、viper简介viper配置管理解析库,是由大神SteveFrancia开发,他在google领导着golang的 ... [详细]
  • Docker的安全基准
    nsitionalENhttp:www.w3.orgTRxhtml1DTDxhtml1-transitional.dtd ... [详细]
  • CSS 布局:液态三栏混合宽度布局
    本文介绍了如何使用 CSS 实现液态的三栏布局,其中各栏具有不同的宽度设置。通过调整容器和内容区域的属性,可以实现灵活且响应式的网页设计。 ... [详细]
  • Linux 系统启动故障排除指南:MBR 和 GRUB 问题
    本文详细介绍了 Linux 系统启动过程中常见的 MBR 扇区和 GRUB 引导程序故障及其解决方案,涵盖从备份、模拟故障到恢复的具体步骤。 ... [详细]
author-avatar
郑云雪
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有