c3p0基本使用和配置演示
c3p0基本使用
c3p0:数据库连接池技术
步骤:
1、导入jar包(两个):c3p0-0.9.5.2.jar,mchange-commons-java-0.2.12.jar,不要忘记导入数据库驱动jar包
2、定义配置文件:
名称:c3p0.properties 或者 c3p0-config.xml
路径:直接将文件放在src目录下即可
3、创建核心对象:数据库连接池对象: ComboPooledDataSource
4、获取连接:getConnection
/** * c3p0的演示 */ public class C3P0Demo1 { public static void main(String[] args) throws SQLException { //1、创建数据库连接池对象 DataSource ds = new ComboPooledDataSource(); //2.获取连接对象 Connection conn = ds.getConnection(); //3.打印 System.out.println(conn); } }
c3p0配置演示
public static void main(String[] args) throws SQLException { //获取DataSource,使用默认设置 DataSource ds = new ComboPooledDataSource(); //获取连接 for (int i = 1;i <= 11;i++){ Connection conn = ds.getConnection(); System.out.println("i:"+conn); } }
当连接数据量已经超过了最大的链接数据量,那么救护报错
public static void main(String[] args) throws SQLException { //获取DataSource,使用默认设置 DataSource ds = new ComboPooledDataSource(); //获取连接 for (int i = 1;i <= 11;i++){ Connection conn = ds.getConnection(); System.out.println("i:"+conn); if (i==5){ conn.close(); } } }
当在中途归还一个连接的时候,第11个就有了连接池
使用指定名称配置
public static void testNameConfig() throws SQLException { //获取DataSource,使用指定名称配置 DataSource ds = new ComboPooledDataSource("otherc3p0"); //获取连接 for (int i = 1; i <= 10; i++) { Connection conn = ds.getConnection(); System.out.println(i+":"+conn); } }
当获取第9个连接的时候,最大连接池设置的是8,产生报错
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
· 【自荐】一款简洁、开源的在线白板工具 Drawnix