定制druid的工具类
package com.gta.utils;
import com.alibaba.druid.pool.DruidDataSourceFactory;
import javax.sql.DataSource;
import java.sql.Connection;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
import java.util.Properties;
/**
* Druid连接池的工具类
*/
public class JDBCUtils {
//定义成员变量DataSource
private static DataSourceds;
static{
try {
//加载配置文件
Properties pro=new Properties();
pro.load(JDBCUtils.class.getClassLoader().getResourceAsStream("druid.properties"));
ds= DruidDataSourceFactory.createDataSource(pro);
}catch (Exception e) {
e.printStackTrace();
}
}
/**
* 获取连接
*/
public static ConnectiongetConnection()throws SQLException {
return ds.getConnection();
}
/**
* 释放资源
*/
public static void close(Statement stmt, Connection conn){
close(null,stmt,conn);
}
public static void close(ResultSet rs,Statement stmt, Connection conn){
if (rs!=null){
try {
stmt.close();
}catch (SQLException e) {
e.printStackTrace();
}
}
if (stmt!=null){
try {
stmt.close();
}catch (SQLException e) {
e.printStackTrace();
}
}
if (conn!=null){
try {
stmt.close();
}catch (SQLException e) {
e.printStackTrace();
}
}
}
/**
* 获取连接池的方法
*/
public static DataSourcegetDataSource(){
return ds;
}
}
使用自制的工具类
package com.gta.druid;
import com.gta.utils.JDBCUtils;
import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.SQLException;
/**
* 使用新的工具类
*/
public class DruidDemo2 {
public static void main(String[] args) {
try {
//获取连接
Connection connection = JDBCUtils.getConnection();
//定义sql
String sql="insert into tb_user (id,name,age) values(null,?,?)";
//获取pstmt对象
PreparedStatement preparedStatement = connection.prepareStatement(sql);
//给?赋值
preparedStatement.setString(1,"lisi");
preparedStatement.setInt(2,30);
//执行sql
preparedStatement.executeUpdate();
}catch (SQLException e) {
e.printStackTrace();
}
}
}