一、資料庫連接遲druid工具類
import com.alibaba.druid.pool.DruidDataSourceFactory;
import org.apache.commons.beanutils.PropertyUtils;
import javax.sql.DataSource;
import java.io.IOException;
import java.sql.*;
import java.util.ArrayList;
import java.util.List;
import java.util.Properties;
public class JdbcUtils {
/**
* 獲取連接
* @return
* @throws IOException
* @throws ClassNotFoundException
* @throws SQLException
*/
private static DataSource ds = null;
static {
try {
Properties props = new Properties();
props.load(JdbcUtils.class.getClassLoader().getResourceAsStream("druid.properties"));
ds = DruidDataSourceFactory.createDataSource(props);
} catch (Exception e) {
throw new RuntimeException("讀取組態檔例外", e);
}
}
//Druid連接池
public static Connection getDruidConnection() throws Exception {
Connection conn = null;
conn = ds.getConnection();
return conn;
}
public static void release(Connection conn) throws SQLException {
if(conn != null)
conn.close();
}
public static void release(Connection conn, PreparedStatement ps) throws SQLException {
if(ps!=null)
ps.close();
if(conn!=null)
conn.close();
}
public static void release(Connection conn, PreparedStatement ps, java.sql.ResultSet rs) throws SQLException {
if(rs!=null) rs.close();
if(ps!=null) ps.close();
if(conn!=null) conn.close();
}
}
二、資料庫連接池druid工具類的測驗類
import com.bigdata.plus.Entity.DatabaseInfo;
import org.junit.Test;
import java.io.IOException;
import java.sql.*;
import java.util.ArrayList;
import java.util.Date;
import java.util.Iterator;
import java.util.List;
/*
使用PrepareStatement完成增刪改
*/
public class PrepareStatementTest {
@Test
public void test9() throws Exception {
Connection connection = JdbcUtils.getDruidConnection();
DatabaseMetaData metaData = connection.getMetaData();
System.out.println(metaData.getDatabaseProductName());
System.out.println(metaData.getDatabaseMajorVersion());
ResultSet catalogs = metaData.getCatalogs();
while(catalogs.next()){
String str = catalogs.getString(1);
System.out.println(str);
}
JdbcUtils.release(connection,null,catalogs);
}
}
測驗成功輸出如下所示:
MySQL
5
datafish_test
dw
information_schema
inventory
mysql
optics
performance_schema
sys
轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/386941.html
標籤:其他
上一篇:AUC計算python實作
下一篇:覆寫方法陰影多載最終版本
