Java 使用JDBC、DBCP、C3P0访问数据库
JDBC:
Connection conn = null;
Statement stmt = null;
ResultSet rs = null; // 1.加载驱动
try {
Class.forName("com.ibm.db2.jcc.DB2Driver"); /*Driver driver = new com.ibm.db2.jcc.DB2Driver();
DriverManager.registerDriver(driver);
//这样做,意义不大,因为类在加载的时候就已经创建了DB2Driver对象,并向DriverManager注册*/
} catch (Exception e) {
e.printStackTrace();
} String url = "jdbc:db2://10.10.38.138:50000/malltest";
String username = "db2inst1";
String password = "db2inst1";
try {
// 2.创建数据库连接
conn = DriverManager.getConnection(url, username, password); // 3.获取数据库操作对象
stmt = conn.createStatement(); // 4.操作数据库获取结果集
rs = stmt.executeQuery("select * from ly.t_merinf where merid='M0000178'"); // 5.处理结果集
while(rs.next()){
System.out.println(rs.getString("mername"));
}
} catch (SQLException e) {
e.printStackTrace();
} finally {
// 关闭结果集
if(rs != null) {
try { rs.close(); } catch (SQLException e) { }
}
// 关闭数据库操作对象
if(stmt != null) {
try { stmt.close(); } catch (SQLException e) { }
}
// 关闭数据库连接
if(conn != null) {
try { conn.close(); } catch (SQLException e) { }
}
}
DBCP:
// 1.创建连接池
DataSource ds = null;
try {
Properties prop = new Properties();
// 通过类路径来加载属性文件
prop.load(DbcpTest.class.getClassLoader().getResourceAsStream("database/dbcp/dbcp.properties"));
// 获取数据源
ds = BasicDataSourceFactory.createDataSource(prop);
} catch (IOException e) {
e.printStackTrace();
} catch (Exception e) {
e.printStackTrace();
} Connection conn = null;
Statement stmt = null;
ResultSet rs = null;
try {
// 2.获取数据库连接
conn = ds.getConnection(); // 3.创建数据库操作对象
stmt = conn.createStatement(); // 4.操作数据库获取结果集
rs = stmt.executeQuery("select * from ly.t_merinf where merid='M0000178'"); // 5.处理结果集
while (rs.next()) {
System.out.println(rs.getString("mername"));
}
} catch (SQLException e) {
e.printStackTrace();
} finally {
// 关闭结果集
if(rs != null) {
try { rs.close(); } catch (SQLException e) { }
}
// 关闭数据库操作对象
if(stmt != null) {
try { stmt.close(); } catch (SQLException e) { }
}
// 关闭数据库连接
if(conn != null) {
try { conn.close(); } catch (SQLException e) { }
}
}
配置文件:
driverClassName=com.ibm.db2.jcc.DB2Driver
url=jdbc:db2://10.10.38.138:50000/malltest
username=db2inst1
password=db2inst1
initialSize=3
maxActive=5
maxIdle=3
minIdle=1
maxWait=30000
C3P0:
ComboPooledDataSource cpds = new ComboPooledDataSource(); // 加载数据库驱动
try {
cpds.setDriverClass("com.ibm.db2.jcc.DB2Driver");
} catch (PropertyVetoException e1) {
e1.printStackTrace();
} // 设置访问数据库的地址、用户名和密码
cpds.setJdbcUrl("jdbc:db2://10.10.38.138:50000/malltest");
cpds.setUser("db2inst1");
cpds.setPassword("db2inst1"); // 设置C3P0的一些配置,不设置则使用默认值
cpds.setMinPoolSize(5);
cpds.setAcquireIncrement(5);
cpds.setMaxPoolSize(20);
cpds.setMaxStatements(180); Connection conn = null;
Statement stmt = null;
ResultSet rs = null;
try {
// 创建数据库连接
conn = cpds.getConnection(); // 获取数据库操作对象
stmt = conn.createStatement(); // 操作数据库获取结果集
rs = stmt.executeQuery("select * from ly.t_merinf where merid='M0000178'"); // 处理结果集
while (rs.next()) {
System.out.println(rs.getString("mername"));
}
} catch (SQLException e) {
e.printStackTrace();
} finally {
// 关闭结果集
if(rs != null) {
try { rs.close(); } catch (SQLException e) { }
}
// 关闭数据库操作对象
if(stmt != null) {
try { stmt.close(); } catch (SQLException e) { }
}
// 关闭数据库连接
if(conn != null) {
try { conn.close(); } catch (SQLException e) { }
}
try {
DataSources.destroy(cpds);
} catch (SQLException e) {
e.printStackTrace();
}
}
Java 使用JDBC、DBCP、C3P0访问数据库的更多相关文章
- Java使用JDBC连接SQL Server数据库|实现学生成绩信息系统
Java实验四 JDBC 使用SQL Server数据库或者MySQL数据库各自的客户端工具,完成如下任务: (1)创建数据库students: (2)在数据students中创建表scores,包括 ...
- Java使用JDBC连接SQL Server数据库
Java使用JDBC连接SQL Server数据库 1.下载驱动 1.下载Microsoft SQL Server JDBC 驱动程序 https://docs.microsoft.com/zh-cn ...
- 【JAVA - SSM】之MyBatis与原生JDBC、Hibernate访问数据库的比较
首先来看一下原生JDBC访问数据库的代码: public static void main(String[] args) { // 数据库连接 Connection connection = null ...
- 【JavaEE】之MyBatis与原生JDBC、Hibernate访问数据库的比较
首先来看一下原生JDBC访问数据库的代码: public static void main(String[] args) { // 数据库连接 Connection connection = null ...
- Java数据库连接--JDBC基础知识(操作数据库:增删改查)
一.JDBC简介 JDBC是连接java应用程序和数据库之间的桥梁. 什么是JDBC? Java语言访问数据库的一种规范,是一套API. JDBC (Java Database Connectivit ...
- SpringBoot实战(四)之使用JDBC和Spring访问数据库
这里演示的是h2databse示例,所以简单的介绍普及下h2database相关知识 H2数据库是一个开源的关系型数据库. H2是一个嵌入式数据库引擎,采用java语言编写,不受平台的限制,同时H2提 ...
- JAVA使用JDBC连接,修改MySQL数据库(比较乱)
原文地址1(连接MySQL图文) : http://www.cnblogs.com/GarfieldEr007/p/5746137.html 原文地址2 (修改MySQL图文): http://www ...
- Java通过JDBC连接SQL Server2017数据库
一.需要明白的基础知识 数据库名 驱动jar(x表示版本号) 具体驱动类 连接字符串(ip地址,端口号,名字) Oracle ojdbc-x.jar oracle.jdbc.oracleDriver ...
- Java使用JDBC连接随意类型数据库(mysql oracle。。)
package cn.liz.test; import java.io.InputStream; import java.sql.Connection; import java.sql.Driver; ...
随机推荐
- iOS推送证书p12转成pem
首先你需要导出p12格式的证书,具体操作请参考如下: 其次你就可以通过在控制台输入如下命令即可转换: openssl pkcs12 -in 你导出的p12证书 -out 你要转换的pem证书 -nod ...
- [Swust OJ 767]--将军回家(Dijkstra算法)
题目链接:http://acm.swust.edu.cn/problem/767/ Time limit(ms): 1000 Memory limit(kb): 65535 Description ...
- PHP数组与对象之间用递归转换
2 3 4 5 6 7 8 function object_to_array($e) { $_arr = is_object($e) ? get_object_vars($e) : $e; ...
- jQuery 动态元素添加
有这么一道题 <!DOCTYPE html> <head> <title>前端工程师面试题</title> <meta http-equiv=&q ...
- 十句话教你学会Linux数据流重定向
1.看到重定向一下子就想起了web里面的redirect,没错,但是Linux数据流重定向的作用不是跳到另一个网页,而是用来存储重要的屏幕信息.将不必要的屏幕信息输出到文件里或者“黑洞”里.将错误信息 ...
- iOS多线程中的单例
#import "MyHandle.h" static MyHandle *handle = nil; @implementation MyHandle // 传统写法 // 此时 ...
- 【MongoDB】windows平台搭建Mongo数据库复制集(相似集群)(一)
Replica Sets(复制集)是在mongodDB1.6版本号開始新增的功能.它能够实现故障自己主动切换和自己主动修复功能成员节点的功能,各个DB之间的数据全然一致,大大减少了单点故障的风险. ...
- tomcat环境变量的配置(网上摘,全部验证通过)
tomcat环境变量的配置 1.===> 进入bin目录下,双击startup.bat看是否报错.一般肯定会报. 2.===> 右键我的电脑===>高级===>环境变量 ...
- 利用VC助手(VA)添加注释
利用VC助手(VA)添加注释 今天想给自己写的代码加上版权信息,同时整理一下代码的注释.但是为了保持同样的格式,总是copy,显得有些繁琐.然后试图找解决方案.我用的是VS 2010, 刚开始是尝试了 ...
- 在Windows下github展示代码
最近大爱Web编程,于是寻找各种代码中,然后就发现了GitHub这个网站,如果你知道Google Code,那么你就知道这个GitHub是做什么的了.不过GitHub主要是用作基于Git的分布式版本管 ...