2021-08-10 C3P0连接池
配置资源文件
<?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&characterEncoding=utf8&uesSSL=true&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连接池相关推荐
- c3p0和jdbctemplate配置oracle集群rac,C3P0连接池、DRUID连接池和JdbcTemplate
目录 一.C3P0连接池 1.C3P0连接池简介 2.常用的配置参数 3.C3P0连接池基本使用 (1)C3P0配置文件 (2)API介绍 4.使用步骤 二.DRUID连接池 1. DRUID简介 2 ...
- C3P0连接池、DRUID连接池和JdbcTemplate
目录 一.C3P0连接池 1.C3P0连接池简介 2.常用的配置参数 3.C3P0连接池基本使用 (1)C3P0配置文件 (2)API介绍 4.使用步骤 二.DRUID连接池 1. DRUID简介 2 ...
- Spring+Hibernate+c3p0连接池配置-连接无法释放的问题解决方案
1.Spring+Hibernate+c3p0连接池配置: <?xml version="1.0" encoding="UTF-8"?> < ...
- spring配置c3p0连接池、spring的声明式事务管理
一.spring配置c3p0连接池: 1.导入maven依赖: <!-- https://mvnrepository.com/artifact/com.mchange/c3p0 --> & ...
- (十二)C3P0连接池使用教程
一般我们在项目中操作数据库时,都是每次需要操作数据库就建立一个连接,操作完成后释放连接.因为jdbc没有保持连接的能力,一旦超过一定时间没有使用(大约几百毫秒),连接就会被自动释放掉.而每次新建连接都 ...
- c3p0连接池的配置和简单使用
背景 一般我们在项目中操作数据库时,都是每次需要操作数据库就建立一个连接,操作完成后释放连接.因为jdbc没有保持连接的能力,一旦超过一定时间没有使用(大约几百毫秒),连接就会被自动释放掉.而每次新建 ...
- 【知了堂学习笔记】数据库连接池简介,以及Eclipse中C3p0连接池的简单运用
1.普通的JDBC连接数据库的弊端 普通的JDBC数据库连接使用 DriverManager 来获取,每次向数据库建立连接的时候都要将 Connection 加载到内存中,再验证用户名和密码(得花费0 ...
- 配置 Hibernate 以使用 C3P0 连接池
通过本教程,我想与您分享如何配置您的 Java 项目以及它的休眠配置文件 hibernate.cfg.xml 以使用更专业和生产就绪的连接池提供程序C3P0. Hibernate 的内部连接池算法是初 ...
- c3p0连接池配置Spring核心配置文件中配置applicationContext.xml
1.1 配置c3p0.properties属性文件 #c3p0连接池属性文件 # 四大基本信息 c3p0.driverClass=com.mysql.jdbc.Driver #这里需要改成你自己的数据 ...
- c3p0连接池和druid连接池的使用
1.c3p0连接池 没有配置文件的情况下 @Testpublic void T1() throws SQLException, PropertyVetoException {ComboPooledDa ...
最新文章
- 150页书籍《PyTorch 深度学习快速入门指南》附PDF电子版
- akaze特征匹配怎么去掉不合适的点_单应性矩阵应用基于特征的图像拼接
- 线下沙龙 × 报名 | “大规模数据存储与挖掘”博士生研讨会
- 地理知识归纳:影响降水的九大因素
- 记自己在spring中使用redis遇到的两个坑
- Hihocoder #1631 : Cats and Fish 模拟
- qweb加html文件,将本地html文件加载到Pyside QwebVi中
- Windows核心编程_设置Windows开机自动登录
- SpringMVC的Model、Model Map、ModelAndView
- JavaWeb项目生成PDF文件添加水印图片并导出
- 收看IT播吧吉米老师iptables讲座
- msm8937 64位开发概要
- 计算机固态硬盘装系统,迁移Windows系统到ssd固态硬盘或其他硬盘
- 211西北大学,成立国家超级计算西北大学分中心!
- ue5-预计算可视性体积(PVS)
- 小语种语音情感语料库的建立——论文阅读1
- 解决Orcale登录界面乱码问题(linux)
- 两名一流高校硕士同年毕业论文高度雷同惹争议,怎么过的查重?
- Ural_1671. Anansi's Cobweb(并查集)
- Python创建免费Ip代理池,伪装Ip。
热门文章
- iNeedle系统之国舜项目
- 关于数据库“事务”“索引”“实例”的含义
- 交叉编译cross compiling
- viewpager 获取当前现实的view
- Problem J: 零起点学算法89——程序设计竞赛
- 信息搜集之常见的web组合
- LoaderManager使用具体解释(四)---实例:AppListLoader
- 详解MessageBox(),MsgBox函数的正确使用
- python网络编程学习笔记(9):数据库客户端
- Windows Server 2008 R2 小技巧