2019独角兽企业重金招聘Python工程师标准>>>

//一个c3p0的数据库连接池的多线程测试 import java.sql.Connection;
import java.sql.SQLException;
import java.sql.Statement;
import java.util.Iterator;
import java.util.Random;import com.cn.wangk.db.DbUtil;
import com.cn.wangk.db.MyDbutil;
import com.mchange.v2.c3p0.ComboPooledDataSource;public class DbThread extends Thread {private int ThreadNum = 0;private ComboPooledDataSource ds;public DbThread(int num,ComboPooledDataSource ds) {ThreadNum = num;this.ds = ds;}public void run() {Random random = new Random();System.out.println("线程"+ThreadNum+"启动");int count = 0;Connection connection = null;try {connection = ds.getConnection();} catch (SQLException e2) {e2.printStackTrace();}try {connection.setAutoCommit(false);while(count<30){try {int inum = random.nextInt(1000);Thread.sleep(inum);} catch (InterruptedException e) {e.printStackTrace();}Statement stmt = connection.createStatement();System.out.println("线程"+ThreadNum+",第“"+count+"”次插入数据");stmt.execute("insert into test1 (name,cb)values('我是线程"+ThreadNum+",第“"+count+"”次插入数据!','"+ThreadNum+"')");stmt.close();count++;}if(ThreadNum==150)connection.commit();elseconnection.rollback();connection.setAutoCommit(true);} catch (Exception e) {try {connection.rollback();} catch (SQLException e1) {System.out.print(e1.getMessage());}System.out.print(e.getMessage());}finally{try {if(connection !=null)connection.close();} catch (SQLException e) {System.out.print(e.getMessage());}}//System.out.println(ThreadNum);}/*** @param args*/public static void main(String[] args) {ComboPooledDataSource ds = new ComboPooledDataSource();//truncate table test1// TODO Auto-generated method stubMyDbutil dbutil = MyDbutil.Open();//测试多数据流try {dbutil.execute("truncate table test1");} catch (Exception e) {e.printStackTrace();}for (int i = 0; i < 500; i++) {DbThread dbThread = new DbThread(i,ds);dbThread.start();}}}

转载于:https://my.oschina.net/lovelong1/blog/5809

一个c3p0的数据库连接池的多线程测试相关推荐

  1. 数据库连接池——C3P0:数据库连接池技术

    数据库连接池 1. 概念:其实就是一个容器(集合),存放数据库连接的容器. 当系统初始化好后,容器被创建,容器中会申请一些连接对象,当用户来访问数据库时,从容器中获取连接对象,用户访问完之后,会将连接 ...

  2. JDBC学习总结(二)JDBC操作Blob类型字段高效的批量插入JDBC处理数据库事务将多个SQL看成一个事务执行数据库连接池C3P0DBCPDruidDBUtils工具类实现CRUD

    JDBC学习总结(二)JDBC操作Blob类型字段/高效的批量插入/JDBC处理数据库事务/将多个SQL看成一个事务执行/数据库连接池C3P0/DBCP/Druid/DBUtils工具类实现CRUD ...

  3. C3P0(数据库连接池)详解

    一.定义 C3P0是一个开源的JDBC连接池,它实现了数据源与JNDI绑定,支持JDBC3规范和实现了JDBC2的标准扩展说明的Connection和Statement池的DataSources对象. ...

  4. JDBC工具类,基于C3P0的数据库连接池,提供获取连接池、获取连接对象、释放资源和封装事务操作的方法...

    /**  *  * JDBC工具类,基于C3P0数据库连接池的实现  *  * @author 周瑜  * @2018年5月7日 下午2:13:20  */ public final class JD ...

  5. Spring Boot使用hikari、druid、c3p0等数据库连接池详解

    文章目录 前言 Hikari连接池 Druid连接池 Druid(新版starter)连接池 C3P0连接池(1 C3P0连接池(2 扩展 前言 截至Spring Boot V2.0为止,官方仅为下列 ...

  6. tomcat c3p0 mysql_C3P0数据库连接池与tomcat一起使用时报错

    C3P0在自己做单元测试的时候不报错,生成web项目以后只要采用相应的连接就会报错 相应配置如下: 报错信息如下: 六月 26, 2016 4:20:50 下午 org.apache.catalina ...

  7. [原创]java WEB学习笔记80:Hibernate学习之路--- hibernate配置文件:JDBC 连接属性,C3P0 数据库连接池属性等...

    本博客的目的:①总结自己的学习过程,相当于学习笔记 ②将自己的经验分享给大家,相互学习,互相交流,不可商用 内容难免出现问题,欢迎指正,交流,探讨,可以留言,也可以通过以下方式联系. 本人互联网技术爱 ...

  8. c3p0,DBCP,Druid(德鲁伊)数据库连接池

    c3p0,DBCP,Druid(德鲁伊)数据库连接池 每博一文案 佛说:前世 500 次的回眸,才换来今生的一次擦肩而过. 人与人之间的缘分,真的无需强求,并不是所有的感情都能天长地久,正如<越 ...

  9. 数据库连接池简单介绍和 C3P0的JDBC配置

    前面一节我们介绍了怎样利用jdbc连接数据库,已经实现了数据库的连接,可是在实际的项目开发中,能够发现基本上都使用了数据库连接池技术.为什么要使用数据库连接池呢?根源在于对数据库连接的低效管理 答: ...

  10. Java数据库连接池知识汇总(C3P0+DBCP+Druid)

    为什么要使用数据库连接池技术? 数据库连接池技术的优点 1. 资源重用 由于数据库连接得以重用,避免了频繁创建,释放连接引起的大量性能开销.在减少系统消耗的基础上,另一方面也增加了系统运行环境的平稳性 ...

最新文章

  1. 性能优化之Java(Android)代码优化
  2. java--设计模式总结
  3. 互联网高并发架构技术实践
  4. PyTorch实战GANs
  5. 【译】IPFS — The Permanent, Distributed Web Continues…..
  6. java - springmvc整合cxf发布webservice
  7. python3 在线加密_Python3对称加密算法AES、DES3实例详解
  8. 年老代过大有什么影响
  9. 你掌握垃圾分类大法了吗?图像分类1分钟轻松解决
  10. 【BZOJ3942】Censoring [KMP]
  11. C语言深度解剖读书笔记(6.函数的核心)
  12. 洛谷OJ测评常见的错误
  13. [原]VC被控制时关闭极域电子教室、破解联想硬盘保护系统密码(下)
  14. 移动前端开发和 Web 前端开发的区别
  15. PowerShell路转粉之造轮子(01)------B站离线缓存简单合并blvm4s
  16. JS 函数参数及其传递
  17. Java注解处理器使用详解
  18. 高速PCB设计指南系列(四)
  19. 第一章Java概述及开发环境搭建
  20. python回车换行怎么不行_python回车不能换行怎么办

热门文章

  1. fwr171改无线服务器,迅捷(Fast)FWR171无线路由器3G路由模式设置
  2. linux下下载fnl数据,NCEP再分析资料FNL数据在windows平台用cygwin批量下载方法
  3. Android【报错】android.content.ActivityNotFoundException:activity in yourAndroidManifest.?
  4. P版openstack-nova-compute中日志报错无法同步resource_provider
  5. CentOS下Neo4j安装教程
  6. composer 的快速安装
  7. 极客学院 HTML5
  8. Linux安装Oracle,卡在60%处的解决方法
  9. Linux学习笔记(用户管理)
  10. 多记,多问为什么,最古老的学习方法怎么能丢?!