- 明确数据库版本
--查看oracle版本
select * from v$version
- 明确jdk版本
java -version
-
找寻对应的JDBC jar包
Oracle数据库JDBC driver 版本 与 JDK版本的关系 -
导入对应的jdbc jar包
-
编写配置文件
- c3p0-config.xml
<?xml version="1.0" encoding="UTF-8"?>
<c3p0-config>
<default-config>
<property name="checkoutTimeout">3000</property>
<property name="idleConnectionTestPeriod">3000</property>
<property name="maxIdleTime">3000</property>
<property name="initialPoolSize">2</property>
<property name="maxPoolSize">3</property>
<property name="minPoolSize">2</property>
<property name="maxStatements">100</property>
<property name="acquireIncrement">2</property>
<property name="driverClass">oracle.jdbc.driver.OracleDriver</property>
<property name="jdbcUrl">jdbc:oracle:thin:@ip地址:1521:orcl</property>
<property name="user">用户名</property>
<property name="password">密码</property>
</default-config>
</c3p0-config>
- 编写工具类
- JDBCUtil.java
package com.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 JDBCUtil {
private static ComboPooledDataSource dataSource=null;
static {
try {
//1.配置文件写法
dataSource= new ComboPooledDataSource();
} catch (Exception e) {
e.printStackTrace();
}
}
/*获取连接*/
public static Connection getConnection() throws SQLException, SQLException {
return dataSource.getConnection();
}
public static void colseConnection(Connection connection, Statement statement, ResultSet resultSet){
if(resultSet!=null){
try {
resultSet.close();
} catch (SQLException e) {
e.printStackTrace();
}
}
if (statement!=null){
try {
statement.close();
} catch (SQLException e) {
e.printStackTrace();
}
}
if (connection!=null){
try {
connection.close();
} catch (SQLException e) {
e.printStackTrace();
}
}
}
}
- 编写使用类
package com.dao;
import com.utils.JDBCUtil;
import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
public class Query {
public static void main(String[] args) throws SQLException {
//获取连接对象
Connection connection = JDBCUtil.getConnection();
//查询sql
String sql="select * from test where id=?";
//预编译
PreparedStatement preparedStatement = connection.prepareStatement(sql);
//赋值
preparedStatement.setInt(1,1);
//5.获取结果集
ResultSet resultSet = preparedStatement.executeQuery();
while (resultSet.next()){
System.out.println(resultSet.getInt("id"));
System.out.println(resultSet.getString("name"));
}
}
}