使用C3P0连接池连接数据库
C3P0工具类,XML文件中写关于数据库的一些配置信息
package com.itheima.utils;
import com.mchange.v2.c3p0.ComboPooledDataSource;import java.sql.Connection;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;public class C3P0utilsXML {//C3P0连接池特有的,创捷一个工具类需要使用XML配置文件//把c3p0-config.xml复制到当前模块day03的src下边(名字不能改变,xml文件里边的内容格式也不能改变)//C3P0会自动读取该文件,使用连接池的配置信息给C3P0的对象赋值
private static ComboPooledDataSource dataSource = new ComboPooledDataSource();//连接池的配置信息会自动从XML文件中读取//创捷静态方法得到一个数据量连接对象
public static Connection getConnection(){try {return dataSource.getConnection();} catch (SQLException e) {throw new RuntimeException("获取数据库连接失败"+e);}
}//创捷静态方法,释放资源
public static void close(Connection conn, Statement stat, ResultSet rs){if(conn != null){try {conn.close();} catch (SQLException e) {e.printStackTrace();}}if (stat != null){try {stat.close();} catch (SQLException e) {e.printStackTrace();}}if (rs != null){try {rs.close();} catch (SQLException e) {e.printStackTrace();}}}
}
使用C3P0实现对数据库的操作
package com.itheima.c0p3Test;import com.itheima.utils.C3P0utilsXML;import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;public class C0P3Test {public static void main(String[] args) throws SQLException {test02();}
private static void test02() throws SQLException {//从C3P0连接池中获取数据库连接对象Connection conn = C3P0utilsXML.getConnection();//获取预编译执行对象String sql = "select * from users where uid in(?,?)";PreparedStatement pst = conn.prepareStatement(sql);pst.setObject(1,2);pst.setObject(2,3);//执行sql语句,获取结果ResultSet rs = pst.executeQuery();//处理结果while(rs.next()){String username = rs.getString("username");String password = rs.getString("password");System.out.println(username+"\t"+password);}//释放资源C3P0utilsXML.close(conn,pst,rs);}
}
使用C3P0连接池连接数据库相关推荐
- 使用c3p0对mysql进行增删改查_c3p0连接池连接数据库 并增删改查
使用c3p0连接池连接数据库 示例(mvc模式) 1.mysql.properties (连接数据库的)文件: driver=com.mysql.jdbc.Driver url=jdbc:mysql: ...
- Eclipse使用c3p0连接池出现A ResourcePool could not acquire a resource from its primary factory or sour错误
Eclipse使用c3p0连接池出现A ResourcePool could not acquire a resource from its primary factory or sour错误 出现的 ...
- Hibernate配置C3P0连接池(在配好基本的hibernate配置下使用)
拷贝jar包 找到我们的hibernate安装包,在lib目录下找到optional目录,打开c3p0文件,拷贝里面的jar包到eclipse里 写一个测试类,代码入下 public class C3 ...
- 【知了堂学习笔记】数据库连接池简介,以及Eclipse中C3p0连接池的简单运用
1.普通的JDBC连接数据库的弊端 普通的JDBC数据库连接使用 DriverManager 来获取,每次向数据库建立连接的时候都要将 Connection 加载到内存中,再验证用户名和密码(得花费0 ...
- C3P0 连接池时报 TimeoutException 的解决方法
最近在项目中遇到 C3P0 连接池时 IDEA 报 TimeoutException,记一次排查过程,希望对大家有帮助,过程如下: 首先,看 mysql 服务是否正常.先重启 mysql 服务,发现项 ...
- c3p0连接池报错 A client timed out while waiting
今天在看c3p0连接池的时候,因为连接数据库疯狂报错 com.mchange.v2.resourcepool.TimeoutException: A client timed out while wa ...
- hibernate访问mysql没有响应_Struts2+hibernate + mysql C3P0连接池 导致写数据库无反应(死机)...
我学hibernate刚学不久,最近用s2h+mysql做了个网站,买了个jsp的空间,发布到空间去了之后,第二天访问却访问不了,一查才知道,hiberante默认的连接数据库的时间有个限度,如果在这 ...
- C3P0连接池和Druid连接池
连接池 以往的JDBC使用的方式,每次运行sql都需要从底层注册驱动获取连接,这样非常耗时,浪费资源,sql执行完毕后又需要释放资源,有点类似于开了一家饭店,有客人来,招聘了几个服务员,客人走后,开除 ...
- c3p0和jdbctemplate配置oracle集群rac,C3P0连接池、DRUID连接池和JdbcTemplate
目录 一.C3P0连接池 1.C3P0连接池简介 2.常用的配置参数 3.C3P0连接池基本使用 (1)C3P0配置文件 (2)API介绍 4.使用步骤 二.DRUID连接池 1. DRUID简介 2 ...
最新文章
- 浅谈 Kubernetes 中的服务发现
- valgrind的使用
- 【Socket网络编程】3.字节序转换函数htons、htonl ,地址转换函数inet_ntoa、inet_ntop、inet_pton、inet_addr
- transform你不知道的那些事
- 整理了一些面试题,还在更新中,有时间的可以看看
- 9-3 数据分布概论
- 【sampleDateFormat】对日期进行解析
- 智能公交监控调度系统技术方案,等车不再等到心碎
- 《金融学》笔记 第七章 商业银行
- 【顺序表】SqList *L是什么意思
- 压缩文件压缩率是什么意思
- matlab应用测试,moocMATLAB程序与应用单元测试答案
- 计算机系统底层架构思路
- 数据库函数依赖与候选码求解
- 中国自动转换开关控制器行业市场供需与战略研究报告
- 浅谈STM32 USART串口中断配置函数USART_ITConfig()的编程思路
- Glyphicon 字体图标
- div+css是网页排版技巧
- ORM 系列:一个个人ORM映射框架
- 矩阵旋转(图像旋转)