配置资源文件

<?xml version="1.0" encoding="UTF-8"?><c3p0-config><!--c3p0的缺省(默认)配置如果在代码中ComboPooledDataSource ds=new ComboPooledDataSource();这样写就表示使用的是c3p0的缺省(默认)--><default-config><property name="driverClass">com.mysql.jdbc.Driver</property><property name="jdbcUrl">jdbc:mysql://localhost:3306/jdbcstudy?useUnicode=true&amp;characterEncoding=utf8&amp;uesSSL=true&amp;serverTimezone=UTC</property><property name="user">root</property><property name="password">198337</property><property name="acquireIncrement">5</property><property name="initialPoolSize">10</property><property name="minPoolSize">5</property><property name="maxPoolSize">20</property></default-config></c3p0-config>

创建工具类,读取配置文件

import com.mchange.v2.c3p0.ComboPooledDataSource;
import com.mysql.jdbc.Connection;import javax.sql.DataSource;
import java.io.InputStream;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
import java.util.Properties;public class JdbcUtils_C3p0 {private static DataSource dataSource = null;static {try {dataSource = new ComboPooledDataSource(); //使用默认数据源,读取配置文件c3p0-xml}catch (Exception e) {e.printStackTrace();}}//获取连接public static java.sql.Connection getConnection() throws SQLException {return dataSource.getConnection();}//释放连接public static  void release(Connection conn, Statement st, ResultSet rs) throws SQLException {if (rs!=null){rs.close();}if (st!=null){st.close();}if (conn!=null){conn.close();}}
}

执行数据库插入操作

import com.pan.lesson03.JdbcUtils_C3p0;import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.util.Date;public class TestC3p011 {public static void main(String[] args) {Connection conn = null;PreparedStatement pstm = null;ResultSet rs = null;try {conn = JdbcUtils_C3p0.getConnection();String sql = "INSERT INTO users(`id`,`NAME`,`PASSWORD`,`email`,`birthday`)"  +"VALUES(?,?,?,?,?)"; //使用问号占位符,代替参数pstm = conn.prepareStatement(sql); //预编译sql,先写sql不执行pstm.setInt(1,6);pstm.setString(2,"李洋渣");pstm.setString(3,"544463666");pstm.setString(4,"1458384732@qq.com");//注意点:sql.Date util.Date 类型包不一样 最后要把时间戳转换为java.sql.Date类型pstm.setDate(5,new java.sql.Date(new Date().getTime()));//执行sqlint i = pstm.executeUpdate();if (i>0){System.out.println("插入成功");}} catch (SQLException throwables) {throwables.printStackTrace();}}}

2021-08-10 C3P0连接池相关推荐

  1. c3p0和jdbctemplate配置oracle集群rac,C3P0连接池、DRUID连接池和JdbcTemplate

    目录 一.C3P0连接池 1.C3P0连接池简介 2.常用的配置参数 3.C3P0连接池基本使用 (1)C3P0配置文件 (2)API介绍 4.使用步骤 二.DRUID连接池 1. DRUID简介 2 ...

  2. C3P0连接池、DRUID连接池和JdbcTemplate

    目录 一.C3P0连接池 1.C3P0连接池简介 2.常用的配置参数 3.C3P0连接池基本使用 (1)C3P0配置文件 (2)API介绍 4.使用步骤 二.DRUID连接池 1. DRUID简介 2 ...

  3. Spring+Hibernate+c3p0连接池配置-连接无法释放的问题解决方案

     1.Spring+Hibernate+c3p0连接池配置: <?xml version="1.0" encoding="UTF-8"?> < ...

  4. spring配置c3p0连接池、spring的声明式事务管理

    一.spring配置c3p0连接池: 1.导入maven依赖: <!-- https://mvnrepository.com/artifact/com.mchange/c3p0 --> & ...

  5. (十二)C3P0连接池使用教程

    一般我们在项目中操作数据库时,都是每次需要操作数据库就建立一个连接,操作完成后释放连接.因为jdbc没有保持连接的能力,一旦超过一定时间没有使用(大约几百毫秒),连接就会被自动释放掉.而每次新建连接都 ...

  6. c3p0连接池的配置和简单使用

    背景 一般我们在项目中操作数据库时,都是每次需要操作数据库就建立一个连接,操作完成后释放连接.因为jdbc没有保持连接的能力,一旦超过一定时间没有使用(大约几百毫秒),连接就会被自动释放掉.而每次新建 ...

  7. 【知了堂学习笔记】数据库连接池简介,以及Eclipse中C3p0连接池的简单运用

    1.普通的JDBC连接数据库的弊端 普通的JDBC数据库连接使用 DriverManager 来获取,每次向数据库建立连接的时候都要将 Connection 加载到内存中,再验证用户名和密码(得花费0 ...

  8. 配置 Hibernate 以使用 C3P0 连接池

    通过本教程,我想与您分享如何配置您的 Java 项目以及它的休眠配置文件 hibernate.cfg.xml 以使用更专业和生产就绪的连接池提供程序C3P0. Hibernate 的内部连接池算法是初 ...

  9. c3p0连接池配置Spring核心配置文件中配置applicationContext.xml

    1.1 配置c3p0.properties属性文件 #c3p0连接池属性文件 # 四大基本信息 c3p0.driverClass=com.mysql.jdbc.Driver #这里需要改成你自己的数据 ...

  10. c3p0连接池和druid连接池的使用

    1.c3p0连接池 没有配置文件的情况下 @Testpublic void T1() throws SQLException, PropertyVetoException {ComboPooledDa ...

最新文章

  1. 150页书籍《PyTorch 深度学习快速入门指南》附PDF电子版
  2. akaze特征匹配怎么去掉不合适的点_单应性矩阵应用基于特征的图像拼接
  3. 线下沙龙 × 报名 | “大规模数据存储与挖掘”博士生研讨会
  4. 地理知识归纳:影响降水的九大因素
  5. 记自己在spring中使用redis遇到的两个坑
  6. Hihocoder #1631 : Cats and Fish 模拟
  7. qweb加html文件,将本地html文件加载到Pyside QwebVi中
  8. Windows核心编程_设置Windows开机自动登录
  9. SpringMVC的Model、Model Map、ModelAndView
  10. JavaWeb项目生成PDF文件添加水印图片并导出
  11. 收看IT播吧吉米老师iptables讲座
  12. msm8937 64位开发概要
  13. 计算机固态硬盘装系统,迁移Windows系统到ssd固态硬盘或其他硬盘
  14. 211西北大学,成立国家超级计算西北大学分中心!
  15. ue5-预计算可视性体积(PVS)
  16. 小语种语音情感语料库的建立——论文阅读1
  17. 解决Orcale登录界面乱码问题(linux)
  18. 两名一流高校硕士同年毕业论文高度雷同惹争议,怎么过的查重?
  19. Ural_1671. Anansi's Cobweb(并查集)
  20. Python创建免费Ip代理池,伪装Ip。

热门文章

  1. iNeedle系统之国舜项目
  2. 关于数据库“事务”“索引”“实例”的含义
  3. 交叉编译cross compiling
  4. viewpager 获取当前现实的view
  5. Problem J: 零起点学算法89——程序设计竞赛
  6. 信息搜集之常见的web组合
  7. LoaderManager使用具体解释(四)---实例:AppListLoader
  8. 详解MessageBox(),MsgBox函数的正确使用
  9. python网络编程学习笔记(9):数据库客户端
  10. Windows Server 2008 R2 小技巧